Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
580to584
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
580to584
580to584
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listboxformatierung & dynamischer RowSource

Listboxformatierung & dynamischer RowSource
11.03.2005 11:01:42
Andre
Hi zusammen,
mit folgendem Code (teilweise ein Tip aus diesem Forum, danke!) wird dem Betrachter vorgegaukelt die Listbox sei sowohl links- als auch rechtsbündig formatiert (nur bei Schriftart "Courier New"!).

Private Sub UserForm_Activate()
With Worksheets("Tabelle1")
'LetzteZeileListe = .Cells(Cells.Rows.Count, 2).End(xlUp).Row
Dim arr(1 To 65536, 2 To 7)
Dim iRow As Integer, iCol As Integer
For iRow = 1 To LetzteZeileListe
For iCol = 2 To 7
If iCol = 4 Then
arr(iRow, iCol) = String(8 - _
Len(Cells(iRow, iCol).Text), " ") & _
Cells(iRow, iCol).Text
Else
arr(iRow, iCol) = Cells(iRow, iCol)
End If
Next iCol
Next iRow
ListBox1.List = arr
ListBox1.ColumnCount = 6
ListBox1.ColumnHeads = False
ListBox1.ColumnWidths = "2,2cm;2cm;6cm;1,8cm;2,2cm;0,2cm"
End With
End Sub

Läuft auch klasse, aber mein Problem ist: nun kann ich die RowSource-Eigenschaft meiner Listbox nicht mehr dynamisch einstellen, da ich die Zeilennummer, die ich durch 'LetzteZeileListe' ermittle nicht an mein Array übergeben kann.
Weiß jemand Rat, wie ich meiner Listbox dennoch beibringen könnte, nur den Bereich bis zur letzten nicht leeren Zeile darzustellen?
Gruß Andre

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listboxformatierung & dynamischer RowSource
11.03.2005 11:28:47
Andre
Ok, etwas weiter bin ich schon:
Ich ergänze forlgendes:
If arr(iRow, 2) "" Then
ListBox1.AddItem (arr(iRow, 4))
End If
Aber so kann ich nur einen Wert in die Listbox einfügen, nicht aber die ganze Zeile.
Steh etwas auf dem Schlau!
AW: Listboxformatierung & dynamischer RowSource
11.03.2005 13:47:17
Andre
Erledigt, hier ist die Lösung zu meinem Problem:

Private Sub UserForm_Activate()
With Worksheets("Tabelle1")
LetzteZeileListe = .Cells(Cells.Rows.Count, 2).End(xlUp).Row
Dim arr(1 To 65536, 2 To 7)
Dim iRow As Integer, iCol As Integer
For iRow = 1 To LetzteZeileListe
For iCol = 2 To 7
If iCol = 4 Then
arr(iRow, iCol) = String(8 - _
Len(Cells(iRow, iCol).Text), " ") & _
Cells(iRow, iCol).Text
Else
arr(iRow, iCol) = Cells(iRow, iCol)
End If
Next iCol
ListBox1.AddItem (arr(iRow, 2))
If iRow = 1 Then
ListBox1.List(0, 1) = (arr(1, 3))
ListBox1.List(0, 2) = (arr(1, 4))
ListBox1.List(0, 3) = (arr(1, 5))
Else
ListBox1.List(iRow - 1, 1) = (arr(iRow, 3))
ListBox1.List(iRow - 1, 2) = (arr(iRow, 4))
ListBox1.List(iRow - 1, 3) = (arr(iRow, 5))
End If
Next iRow
ListBox1.ColumnCount = 6
ListBox1.ColumnHeads = False
ListBox1.ColumnWidths = "2,2cm;2cm;6cm;1,8cm;2,2cm;0,2cm"
End With
End Sub

Gruß Andre
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige