Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

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