Zeilennummer in Listbox anzeigen
#1

.xlsm   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
Antworten Top
#2
moin

die Zeilennummer entspricht doch dann deiner Variablen i
dann sollte eigentlich das hier reichen

Code:
.List(.ListCount - 1, 3) = i

mfg Tom
Antworten Top
#3
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
Antworten Top
#4
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
Antworten Top
#5
hallo tom,

das ist die Lösung 18 ,

danke dir
wellington
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste