Registriert seit: 25.06.2023
Version(en): 2007
Mappe3.xlsm (Größe: 20,09 KB / Downloads: 3)
Hallo CEF,
mit nachfolgendem Code wird eine Listbox auf einem UF befüllt.
Code:
Sub UserForm_Initialize()
Dim i As Long
LetzteZeile = ActiveSheet.Cells(1048576, 1).End(xlUp).Row
ListBox1.ColumnCount = 3
ListBox1.ColumnWidths = "90;90;300"
With ListBox1
For i = 4 To LetzteZeile
.AddItem Cells(i, 1) 'SpalteA in erste Spalte
.List(.ListCount - 1, 1) = Cells(i, 2) 'SpalteB in zweite Spalte
.List(.ListCount - 1, 2) = Cells(i, 6) 'SpalteF in dritte Spalte
Next
End With
End Sub
Wie muss ich den Code erweitern damit auch die jeweils zugehörige Zeilennummer in der dann 4-spaltigen Listbox erscheint?
ListBox1.ColumnCount = 4
ListBox1.ColumnWidths = "50;90;90;300"
Danke
wellington
Registriert seit: 12.04.2014
Version(en): Office 365
moin
die Zeilennummer entspricht doch dann deiner Variablen i
dann sollte eigentlich das hier reichen
Code:
.List(.ListCount - 1, 3) = i
mfg Tom
Registriert seit: 25.06.2023
Version(en): 2007
hallo tom,
Code:
Sub UserForm_Initialize()
Dim i As Long
LetzteZeile = ActiveSheet.Cells(1048576, 1).End(xlUp).Row
ListBox1.ColumnCount = 4
ListBox1.ColumnWidths = "50;90;90;300"
With ListBox1
For i = 4 To LetzteZeile
.AddItem Cells(i, 1) 'SpalteA in erste Spalte
.List(.ListCount - 1, 1) = Cells(i, 2) 'SpalteB in zweite Spalte
.List(.ListCount - 1, 2) = Cells(i, 6) 'SpalteF in dritte Spalte
.List(.ListCount - 1, 3) = i
Next
End With
End Sub
ich habe deinen Vorschlag eingefügt, grundsätzlich funktioniert es auch
allerdings erscheint die Zeilenummer in der 4. Spalte der Listbox; ideal wäre es, wenn die Zeilennumme rin der 1. Spalte gelistet würde
Wahrscheinlich könnte die Zeilennummer ebenso in der 2. oder 3.Spalte erscheinen, aber wie schon geschrieben, besser in der 1. Spalte
wellington
Registriert seit: 12.04.2014
Version(en): Office 365
na denn vielleicht so?
Code:
Sub UserForm_Initialize()
Dim i As Long, letzteZeile As Long
letzteZeile = ActiveSheet.Cells(1048576, 1).End(xlUp).Row
ListBox1.ColumnCount = 4
ListBox1.ColumnWidths = "50;90;90;300"
With ListBox1
For i = 4 To letzteZeile
.AddItem i 'Zeilennummer in erste Spalte
.List(.ListCount - 1, 1) = Cells(i, 1) 'SpalteA in zweite Spalte
.List(.ListCount - 1, 2) = Cells(i, 2) 'SpalteB in dritte Spalte
.List(.ListCount - 1, 3) = Cells(i, 6) 'SpalteF in vierte Spalte
Next
End With
End Sub
mfg Tom
Registriert seit: 25.06.2023
Version(en): 2007
hallo tom,
das ist die Lösung
,
danke dir
wellington