Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalten in Listbox - Ausrichtung..

Forumthread: Spalten in Listbox - Ausrichtung..

Spalten in Listbox - Ausrichtung..
27.03.2013 10:23:22
robert
Guten Morgen ;-)
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

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten in Listbox - Ausrichtung..
27.03.2013 11:30:29
Tino
Hallo,
soweit ich es kenne geht dies bei ListBox nicht,
da müsstest Du schon auf ein ListView ausweichen.
Gruß Tino

Danke, werde es versuchen :-) owT - Gruß
27.03.2013 12:14:04
robert

AW: Spalten in Listbox - Ausrichtung..
27.03.2013 13:32:15
Uduuh
Hallo,
ergänze Betrag links durch eine entsprechende Anzahl Leerzeichen (ist ja sowieso alles Text) und benutze eine nichtproportionale Schriftart (z.B. Courier).
Gruß aus’m Pott
Udo

Anzeige
nicht schlecht, aber...
27.03.2013 16:55:08
robert
Hi chandler,
bei mir ist der Weg umgekehrt-nicht von der Tabelle in die Listbox,
sondern Anzeige in der Listbox, wenn Erfassung fertig, dann Eintrag in Tabelle.
Es ist eher ein "optisches" Manko, dass die Zahlen nicht rechtsbündig in der Listbox sind.
Wenn nicht möglich, kann ich auch damit leben :-)
Gruß
robert

Anzeige
AW: Spalten in Listbox - Ausrichtung..
27.03.2013 16:14:16
robert
Hi Udo,
in der 3. Zeile ist mein Problem........
meinst DFu, es ist zu lösen ?
Gruß
robert
.List(.ListCount - 1, 0) = TextBox3
.List(.ListCount - 1, 1) = TextBox5
.List(.ListCount - 1, 2) = Format(CDbl(TextBox3) * CDbl(TextBox4), "#,##0.00")
;
Anzeige
Anzeige

Infobox / Tutorial

Spalten in Listbox ausrichten: So geht's


Schritt-für-Schritt-Anleitung

  1. Erstelle eine UserForm: Öffne den Visual Basic Editor (VBE) in Excel (ALT + F11) und füge eine UserForm hinzu.

  2. Füge eine ListBox hinzu: Ziehe eine ListBox auf die UserForm.

  3. Setze die Eigenschaften: Stelle sicher, dass die ListBox die Eigenschaft ColumnCount auf 3 hat, um drei Spalten anzuzeigen.

  4. 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
  5. Füge Leerzeichen hinzu: Eine andere Möglichkeit besteht darin, Leerzeichen vor dem Betrag hinzuzufügen, um eine optische Rechtbündigkeit zu erreichen.


Häufige Fehler und Lösungen

  • Problem: Die ListBox zeigt die Beträge nicht rechtsbündig an.

    • Lösung: Verwende eine nichtproportionale Schriftart wie "Courier New". Füge Leerzeichen hinzu, um die Darstellung zu optimieren.
  • Problem: Der Betrag wird nicht korrekt formatiert.

    • Lösung: Stelle sicher, dass du die CDbl-Funktion korrekt verwendest, um den Text in eine Zahl zu konvertieren, bevor du ihn formatierst.

Alternative Methoden

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.

  1. ListView hinzufügen: Füge ein ListView-Steuerelement in die UserForm ein.
  2. Spalten hinzufügen: Im Eigenschaftenfenster kannst du die Spalten und deren Ausrichtungen festlegen.

Praktische Beispiele

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.


Tipps für Profis

  • Nutze die Format-Funktion, um sicherzustellen, dass Zahlen in einem einheitlichen Format angezeigt werden, insbesondere wenn du mit Währungsbeträgen arbeitest.
  • Experimentiere mit verschiedenen Schriftarten und -größen, um die beste Darstellung für deine Daten zu finden.
  • Denke daran, die ListBox-Eigenschaft IntegralHeight auf False zu setzen, um eine bessere Kontrolle über die Höhe der ListBox zu haben.

FAQ: Häufige Fragen

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.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige