meine Frage: kann man in einer UF, eine dreispaltige Listbox, die dritte Spalte
rechtsbündig ausrichten ?
Spalte 1 = Menge-Ausrichtung links
Spalte 2 = Bezeichnung-Ausrichtung links
Spalte 3 = Betrag-Ausrichtung rechts
Danke und Gruß
robert
Erstelle eine UserForm: Öffne den Visual Basic Editor (VBE) in Excel (ALT + F11) und füge eine UserForm hinzu.
Füge eine ListBox hinzu: Ziehe eine ListBox auf die UserForm.
Setze die Eigenschaften: Stelle sicher, dass die ListBox die Eigenschaft ColumnCount
auf 3 hat, um drei Spalten anzuzeigen.
Füge Code hinzu: Um die dritte Spalte rechtsbündig auszurichten, kannst du eine nichtproportionale Schriftart verwenden. Füge den folgenden Code in das UserForm-Objekt ein:
Private Sub UserForm_Initialize()
With ListBox1
.AddItem "10" ' Menge
.List(.ListCount - 1, 1) = "Artikel" ' Bezeichnung
.List(.ListCount - 1, 2) = Format(CDbl("100"), "#,##0.00") ' Betrag
.Font.Name = "Courier New" ' Nichtproportionale Schriftart
End With
End Sub
Füge Leerzeichen hinzu: Eine andere Möglichkeit besteht darin, Leerzeichen vor dem Betrag hinzuzufügen, um eine optische Rechtbündigkeit zu erreichen.
Problem: Die ListBox zeigt die Beträge nicht rechtsbündig an.
Problem: Der Betrag wird nicht korrekt formatiert.
CDbl
-Funktion korrekt verwendest, um den Text in eine Zahl zu konvertieren, bevor du ihn formatierst.Wenn du die Darstellung der Daten in einer ListBox nicht so flexibel gestalten kannst, kannst du auch auf ein ListView zurückgreifen. ListViews bieten mehr Kontrolle über die Spaltenausrichtung und sind besonders nützlich für komplexere Datenanzeigen.
Hier ist ein einfaches Beispiel, wie du die ListBox mit Daten befüllen kannst:
Private Sub UserForm_Initialize()
With ListBox1
.AddItem "5" ' Menge
.List(.ListCount - 1, 1) = "Buch" ' Bezeichnung
.List(.ListCount - 1, 2) = Format(CDbl("15.99"), "#,##0.00") ' Betrag
.Font.Name = "Courier New" ' Nichtproportionale Schriftart
End With
End Sub
Hier wird die Menge und die Bezeichnung linksbündig ausgegeben, während der Betrag mithilfe der CDbl
-Funktion und einer nichtproportionalen Schriftart optisch rechtsbündig dargestellt wird.
Format
-Funktion, um sicherzustellen, dass Zahlen in einem einheitlichen Format angezeigt werden, insbesondere wenn du mit Währungsbeträgen arbeitest.IntegralHeight
auf False
zu setzen, um eine bessere Kontrolle über die Höhe der ListBox zu haben.1. Kann ich die ListBox-Spalten unterschiedlich breit machen?
Ja, du kannst die Breite der ListBox-Spalten anpassen, indem du die ColumnWidths
-Eigenschaft verwendest.
2. Ist es möglich, die ListBox in einer Excel-Version ohne VBA zu verwenden?
Leider ist die Anpassung der Spaltenausrichtung in ListBoxen nur mit VBA möglich. In neueren Excel-Versionen ist das jedoch sehr einfach zu implementieren.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen