Clever-Excel-Forum

Normale Version: Combobox - 2 Spaltig....
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallochen allerseits, ich bastle grad an einer Combobox - 2 Spaltig. Die Eigenschaften BoundColumn und ColumnCount sind auf 2 gestellt. Hinter dem blau Markieren 1001 sollt "Umlagen" stehen - tut es aber leider nicht. Es handelt sich um die Combobox "Kontierung"

Code:
Private Sub UserForm_Initialize()
    Dim lngZeileMax As Long
   
    lngZeileMax = Range("Konten").Rows.Count
    With Me.cbKonto
        .RowSource = "Kontierung!B3:C" & lngZeileMax
        .ListIndex = 0
        .ListRows = lngZeileMax
        .Font.Size = 10
    End With

End Sub


Wo ist der Fehler?



Danke für jede Hilfe Smile und ein frohes Fest...



Stefan
Hallo,

nicht BoundColumn, TextColumn = 2 verwenden.

Gruß
Danke, wenn ich die Eigenschaft TextColumn = 2 setze dann wird nur die 2. Spalte angezeigt, aber nicht beide Spalten...und in der Hilfe bin ich auch nicht fündig geworden:
https://docs.microsoft.com/de-de/dotnet/...=vsto-2017
oder suche ich an der falschen Stelle?

Aber wenn ich statt einer ComboBox eine Listbox verwende ist das Problem gelöst, dann werden beide Werte aufgelistet und bei Click nur der Wert der ersten Spalte der Variablen zugewiesen... alles sehr mysteriös!

Vielleicht fällt uns noch was ein Smile

Danke und ein frohes Fest
Stefan

PS.: Screenshots in den Beitrag einzubinden ist in diesem Forum nicht möglich?
Hallöchen,

Zitat:PS.: Screenshots in den Beitrag einzubinden ist in diesem Forum nicht möglich?

speicher den Shot und hänge ihn als Bild an. Beachte dabei die verschiedenen Buttons und Pfeile Smile
Danke, das ist auch 'ne Lösung  Blush Beim nächsten mal....

Stefan
Hallo,

beide Spalten gleichzeitig anzeigen geht in einer Combobox nicht. Was Du machen kannst, ist eine Spalte zu verwenden,
wo Du dann die Werte zusammensetzt und diese Spalte anzeigst. In einer versteckten Spalte legst Du den Wert ab,
den später woanders verwendet wird. Hier ein Beispiel:

Code:
Private Sub UserForm_Initialize()
 
  Dim n As Long
  Dim d As Variant
 
' Werte...
 
  d = Range("Konten").Offset(0, 1).Resize(, 2).Value
 
' Einstellungen...
 
  cbKonto.ColumnCount = 2
  cbKonto.ColumnWidths = "0;"
  cbKonto.Font.Size = 10
 
' Einlesen...
 
  For n = LBound(d, 1) To UBound(d, 1)
 
    cbKonto.AddItem
   
    cbKonto.List(cbKonto.ListCount - 1, 0) = d(n, 1)
    cbKonto.List(cbKonto.ListCount - 1, 1) = d(n, 1) & " - " & d(n, 2)
   
  Next
 
' Index...
 
  cbKonto.ListIndex = 0
 
  MsgBox cbKonto.List(cbKonto.ListIndex, 0)
 
End Sub

Gruß
Reicht

Code:
Private Sub UserForm_Initialize()
   cbKonto.List=Range("Konten").Value
End Sub

Die Eigenschaften der Combobox sollte man im Entwurf Modus erstellen und speichern:

columncount 2
columnwidth 30;30 oder columnwidth (leer)
Hallo, ich hab mich letztendlich für eine Listbox entschieden - die tut was sie solll. Ich muss nur noch bisschen an der Spaltenausrichtung arbeiten...

Danke
Stefan      

Xmas31
Hallo,

@snb: nein, reicht nicht, wenn beide Spalten gleichzeitig als Wert angezeigt werden sollen. Aber StefKe hat sich ja nun für eine Listbox entschieden.

Gruß
Reicht doch
Seiten: 1 2