Ich bin ein Neuling. (Verzeihen Sie mein Englisch)Zweispaltige Listenfeld mit Blatt Wert
Ich habe eine Rechnung für mich erstellt, gibt es eine Benutzer-Form, die mit diesem Code initialisiert werden:
Private Sub UserForm_Initialize()
'Populate listbox with unique invoice numbers from sheet "Invoice data"
Dim Test As New Collection
Dim rng As Variant
Dim Value As Variant
'Identify range
rng = Sheets("Invoice data").Range("A2:A" & _
Sheets("Invoice data").Columns("A").Find("*", _
SearchOrder:=xlRows, SearchDirection:=xlPrevious, _
LookIn:=xlValues).Row)
'Filter unique values
On Error Resume Next
For Each Value In rng
If Len(Value) > 0 Then Test.Add Value, CStr(Value)
Next Value
On Error GoTo 0
For Each Value In Test
ListBox1.AddItem Value
Next Value
ListBox1.ListIndex = 0
End Sub
In diesem User-Formular Ich habe ein Listenfeld zu zeigen, die ID-Nummer in den Blättern ("Rechnungsdaten") Bereich ist Spalte "A".
Ich muss dieses Listenfeld in ein zweispaltiges Feld konvertieren, die erste Spalte sollte "A" anzeigen und die nächste Spalte sollte "C" anzeigen.
Können Sie mich führen?
Vielen Dank im Voraus.
ersten Treffer bei Google: https://stackoverflow.com/questions/11213962/vba-listbox-multicolumn-add –
Hallo Williams, diese Antwort löste mein Problem nicht. –
Was genau ist das Problem? Wie erstelle ich ein zweispaltiges Listenfeld? Vielleicht hilft dies - http://software-solutions-online.com/vba-multi-column-listboxes/ Wenn Sie ein Dictionary anstelle einer Collection verwenden, können Sie einfacher nach eindeutigen Werten suchen und sie so zur Liste hinzufügen gehen (und das bedeutet, dass Sie auch den "c" -Wert hinzufügen können ('Value.Offset (0,2) .Value'). BTW Ich würde vermeiden," Value "als Variablenname zu verwenden ... –