Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1420to1424
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Combobox dynamisch füllen (Quellspalte)
20.04.2015 13:20:40
Kai
Hallo Excel Gemeinde,
ich habe mal eine Frage, ob das geht :
Ich habe eine Referenztabelle, die so aufgebaut ist:
Zeile1: Spaltenkopf
ab Zeile 2 Daten
___Menue1___Menue2___Menue3___
___ROT______Groß_____Dick_____
___BLAU_____Klein____Dünn_____
___GELB_____Mittel___SCHLANK__
(.. und noch viele weiter Spalten dazu)
Auf einem anderen Blatt habe ich eine Spalte, in der viele Comboboxn untereinander sind. (Pro Zeile eine über DATEN / DATENÜBERPRÜFUNG / LISTE ...)
In dieser Spalte will ich je nach Bedarf mal den Inhalt aus Menü1 oder Menü2 oder Menü3 oder .... laden.
Habe mir überlegt, ob es möglich ist, zB in eine bestimmte Zelle "Menue1" zu schreiben, und dann wird in der entsprechenden Zeile die Combobox mit Werten aus der entsprechenden Spalte der Referenzliste geladen.
Beispiel:
In Zeile 2 steht in Spalte A ein String "Menue2" , in der Spalte B ist eine Combobox.
Aufgrund des Strings ""Menue1" greift die Combobox im Refferenzdatenblatt auf den Zeilenkopf "Menue2" und läd die Daten aus dieser Spalte in die Combobox rein.
Würden in A2 der String "Menue3" stehen, sollen in B2 die Daten der Combobox aus der Spalte 3 ("Menue3") kommen.
Geht sowas ?
Dank Euch mal
Kai

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Combobox dynamisch füllen (Quellspalte)
20.04.2015 13:49:29
Rudi
Hallo,
Die einfache Lösung:
Vergib für alle deine Menüs Namen (Menü1, Menü2,...)
Regel für die Datenüberprüfung: =Indirekt(a2)
Gruß
Rudi

AW: Combobox dynamisch füllen (Quellspalte)
20.04.2015 14:00:58
Kai
Hallo Rudi,
ich bin mir nicht sicher, ob es der richtige Weg ist. Die Anzahl der Spalten (=Anzahl der Menüs)
kann die Grössenordnung von ca. 1000 Spalten haben.
Das heißt , ich müsste 1000 Namen und mehr vergeben.
Darum wollte ich es über so einen String machen und mir daraus irgend wie die Verknüpfung zusammenbauen.
Hoffe es gibt noch eine ander Möglichkeit.
Gruß
Kai

AW: Combobox dynamisch füllen (Quellspalte)
20.04.2015 15:52:22
Nepumuk
Hallo,
das Problem ist das "auf einem anderen Tabellenblatt". Wäre es in der selben Tabelle könntest du es über Formeln machen, weil es aber ein anderes Tabellenblatt ist geht es nur über Namen. Aber, Namen kannst du per VBA erzeugen, einfach mal den Makrorekorder mitlaufen lassen und dann den Code in eine Schleife packen. Aufwand ~ 2 Minuten.
Gruß
Nepumuk

Anzeige
AW: Combobox dynamisch füllen (Quellspalte)
20.04.2015 16:03:30
Rudi
Hallo,
die Namen kannst du per Code vergeben.
Sub Namen()
Dim r As Range
With Sheets(1)  'anpassen
For Each r In .Range(.Cells(1, 1), .Cells(1, .Columns.Count).End(xlToLeft))
.Range(r.Offset(1), .Cells(.Rows.Count, r.Column).End(xlUp)).Name = r.Text
Next
End With
End Sub
Gruß
Rudi

AW: Combobox dynamisch füllen (Quellspalte)
21.04.2015 11:44:46
Kai
Hallo Rudi und Nepumuk,
Danke für Eure Hilfe.
Ich konnte mit dem Makro die Namen erzeugen (Tabelle2) und konnte von Tabelle1 aus mit der Formel INDIREKT... die Combobox über die Datenüberprüfung je nach Eintrag in A2 füllen,
Bei dem Erstellen der Namen habe ich noch ein bischen Probleme:
Wenn ich Spaltenköpfe habe, die nicht nur Text sind, sondern auch Zahlen sind oder Text und Zahl enthalten, kommt es beimn erstellen der Namen zu einem Fehler. (Laufzeitfehler 1004) Ich vermute das liegt daran :
.Name = r.Text
Kann man das ganze auch machen, wenn der Spaltenkopf eine Zahl im Name enthält oder nur aus Zahlen besteht... oder mag Excel das nicht ?
Danke Kai

Anzeige
AW: Combobox dynamisch füllen (Quellspalte)
21.04.2015 13:08:27
Rudi
Hallo,
.Name = "_" & r.Text
Gruß
Rudi

Danke: Combobox dynamisch füllen (Quellspalte)
21.04.2015 16:12:07
Kai
Hallo Rudi,
super, vielen Dank.
Da hätte ich auch selber drauf kommen können, ist aber eine gute Idee.
Auf jeden Fall habe ich nun, was ich wollte.
Toll.
Sag mal, die Funktion mit dem einlesen der Namen ist echt gut, gerade wenn man viele Spalten hat.
Das geht doch sicher auch, wenn die Tabelle um 90 Grad gedreht ist, sprich, die Spaltenköpfe (Namen) sind nun alle in der Spalte A und die informationen in den Spalten B, C, ...
kannst Du mir das bitte noch umschiessen ? Wäre echt nett.
Danke
Kai

Anzeige
AW: Danke: Combobox dynamisch füllen (Quellspalte)
22.04.2015 20:52:31
Rudi
Hallo,
dann so:
Sub Namen2()
Dim r As Range
With Sheets(1)  'anpassen
For Each r In .Range(.Cells(1, 1), .Cells(.Rows.Count, 1).End(xlUp))
.Range(r.Offset(, 1), .Cells(r.Row, .Columns.Count).End(xlToLeft)).Name = "_" & r.Text
Next
End With
End Sub

Letztlich kannst du auch alles markieren und über Formeln-definierte Namen-aus Auswahl erstellen die Namen einfügen.
Gruß
Rudi

Vielen Dank, perfekt. owT
23.04.2015 15:46:42
Kai

42 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige