Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1588to1592
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
Inhaltsverzeichnis

Kombinationsfeld: Anzeige der 2ten Spalte

Kombinationsfeld: Anzeige der 2ten Spalte
08.11.2017 16:03:28
komatsur
Guten Tag,
irgendwie stehe ich auf der Leitung. Ich habe ein Kombinationsfeld mittels List mit einem Array(aus einer Datei) gefüllt [zB.: cboAuswahl.list = meinArray] Da habe ich dann immer die 1.Spalte von diesem Array zur Auswahl/Anzeige. Ich hätte jedoch gerne die 2.Spalte (und nur diese) im Drop-Down-Menü
Hatte schon verschiedene Möglichkeiten gefunden, zB. dass ich bei der Auswahl die 1. und die 2.Spalte angezeigt bekomme und dann als Wert nur den der 2.Spalte zurückbekomme, aber es sollte eben nur die 2.Spalte zur Auswahl stehen.
Wollte aus Verzweiflung schon ein temporäres eindimensionales Array anlegen, in welches ich einfach die 2.Spate reinkopiert und dieses dann für das Kombinationsfeld verwende, aber das war mir dann doch zu unsauber und somit bin ich mit meiner Frage hier.
Es tut mir Leid, dass ich die Datei nicht online stellen kann (zu komplex), falls jedoch ein Beispiel erwünscht ist, mach ich einfach eine eigene Datei.
Vielen dank für eure Anregungen, komatsur

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kombinationsfeld: Anzeige der 2ten Spalte
08.11.2017 16:09:52
ChrisL
Hi
Wie wärs die ComboBox Eigenschaft ColumnCount auf 2 setzen und die Spaltenbreite von A auf Null (ausblenden).
Ansonsten müsstest du wohl den Umweg über ein separates Array machen.
cu
Chris
AW: Kombinationsfeld: Anzeige der 2ten Spalte
08.11.2017 16:21:20
komatsur
Hi Chris,
interessante Idee, hab jetzt mal "BoundColumn" und "ColumnCount" auf jeweils 2 gestellt und "ColumnWidths" auf 0 Pt, damit würde es funktionieren.
In weiterer Folge würde ich aber von diesem Array an einer anderen Stelle dann die zB. 4 Spalte (und eben auch hier nur diese Spalte) aus Auswahlspalte benötigen, da funktioniert diese Methode dann leider nicht mehr.
Vielen Dank! lg komatsur
Anzeige
AW: Kombinationsfeld: Anzeige der 2ten Spalte
08.11.2017 17:39:14
komatsur
Hallo nochmal,
hatte kurzzeitig überlegt, ob ich für die Variante - bei der ich die 4.Spalte angezeigt haben möchte, alle vorangehenden "ColumnWidths" auf 0 Pt setze, mich dann aber doch für den Umweg mit dem kopiertem Array entschieden.
Mein Problem ist somit gelöst, habe dennoch das Kontrollkästchen für eine offene Frage bei diesem Beitrag aktiviert, weil es mich einfach interessiert, ob es nicht doch noch eine smartere Lösung gibt.
Vielen Dank! lg komatsur
Array redimensionieren (verkleinern)
08.11.2017 18:19:55
ChrisL
Hi
ComboBox-Spalten einfach ausblenden wäre m.E. kein Beinbruch.
Wenn das Array einem bestimmten Tabellenbereich entspricht, dann kannst du die Range-Variable mit Resize und Offset zurecht stutzen. Die beiden Befehle funktionieren leider nicht für Arrays.
Insofern reduziert sich die Frage darauf, wie ein Array elegant redimensioniert werden kann. Angenommen wir haben 3 Array Spalten (0-2).
Dim ar(100, 2)
ReDim ar(100, 0) = 1. Spalte
ReDim Preserve ar(100, 3) = erweitern auf 4 Spalten
Ein "nimm die 2. Spalte" gibt es leider nicht. Darum nur mit Schleife.
cu
Chris
Anzeige
AW: Spalte 4
08.11.2017 21:32:04
Gerd
Hallo,
jaja, so ein Auto hatte ich auch 'mal. :-)
Sub Columna()
Dim arr1, arr2
arr1 = Range("a1:d5").Value
arr2 = WorksheetFunction.Index(arr1, 0, 4)
MsgBox Join(WorksheetFunction.Transpose(arr2), vbLf)
End Sub

Gruß Gerd
AW: Spalte 4
09.11.2017 08:13:50
ChrisL
Hi Gerd
Danke für den Hinweis. An eine Lösung mit Index hatte ich bisher nie gedacht, das werde ich mir merken ;)
cu
Chris

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige