Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Listbox links- u. rechtsbündig

Listbox links- u. rechtsbündig
22.10.2012 17:49:40
Wolfgang
Hallo,
ich möchte in einer Listbox die Spalten 2 - 4 linksbündig und die Spalten 5 - 8
rechtsbündig haben.
Mein Eintrag: .TextAlign = fmTextAlignRight
wirkt sich aber immer auf die ganze Listbox aus.
Code:
With Me.ListBox1
.ColumnCount = 8
.AddItem
.List(.ListCount - 1, 0) = rngCell.Offset(0, 1).Value ' 1 = Datum
.List(.ListCount - 1, 1) = rngCell.Offset(0, 2).Value ' 2 = Name
.List(.ListCount - 1, 2) = rngCell.Offset(0, 3).Value ' 3 = Bezeichnung
.List(.ListCount - 1, 3) = rngCell.Offset(0, 4).Value ' 4 = Kategorie
.List(.ListCount - 1, 4) = Format(rngCell.Offset(0, 5).Value, "#,##0.00 €") ' 5 = Miete
.List(.ListCount - 1, 5) = Format(rngCell.Offset(0, 6).Value, "#,##0.00 €") ' 6 = Garage
.List(.ListCount - 1, 6) = Format(rngCell.Offset(0, 7).Value, "#,##0.00 €") ' 7 = NK
.List(.ListCount - 1, 7) = Format(rngCell.Offset(0, 8).Value, "#,##0.00 €") ' 8 = Aus
.TextAlign = fmTextAlignRight
.ColumnWidths = "2,5cm;4cm;4cm;4cm;2,5cm;2,5cm;2,5cm;2,5cm" 'Spaltenbreiten
End With
Set rngCell = .FindNext(rngCell)
Loop While Not rngCell Is Nothing And rngCell.Address strFirstAddress
Ich bitte um Hilfe.
Gruß Wolfgang

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Listbox links- u. rechtsbündig
22.10.2012 17:50:44
Hajo_Zi
Hallo Wolfgang,
das geht nur durch Leerstellen.

AW: Listbox links- u. rechtsbündig
23.10.2012 10:24:04
Wolfgang
Hallo Hajo,
danke für Deine Antwort. Ist aber keine elegante Lösung.
Ich meine, dass es für "TextAlign" wie z. B. für "Format"
auch eine Lösung geben muss.
Vielleicht hat ja ein Anderer noch eine Lösung?
Gruß Wolfgang

Anzeige
AW: Listbox links- u. rechtsbündig
23.10.2012 10:35:09
Rudi
Hallo,
Ist aber keine elegante Lösung.
Anders geht's aber nicht.
Gruß
Rudi

AW: Listbox links- u. rechtsbündig
23.10.2012 14:20:14
Wolfgang
Kann ich noch nicht ganz glauben und lasse die Frage noch mal offen stehen.
Gruß Wolfgang

AW: Listbox links- u. rechtsbündig
23.10.2012 19:48:35
Hajo_Zi
Hallo Wolfgang,
das kannst Du glauben.
Gruß Hajo

Anzeige
Kann ich noch nicht ganz glauben
24.10.2012 09:44:29
Rudi
Hallo,
warum fragst du dann?
Gruß
Rudi
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Listbox links- und rechtsbündig gestalten in Excel


Schritt-für-Schritt-Anleitung

Um in einer Listbox in Excel die Ausrichtung der Spalten zu ändern, musst du mit VBA arbeiten. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor in Excel (ALT + F11).

  2. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject" klickst und "Einfügen" > "Modul" auswählst.

  3. Kopiere den folgenden Code in das Modul:

    Sub FormatListBox()
        Dim rngCell As Range
        Set rngCell = ThisWorkbook.Sheets("DeinBlatt").Range("A1") ' Passe den Bereich an
    
        With Me.ListBox1
            .ColumnCount = 8
            .AddItem
            .List(.ListCount - 1, 0) = rngCell.Offset(0, 1).Value ' 1 = Datum
            .List(.ListCount - 1, 1) = rngCell.Offset(0, 2).Value ' 2 = Name
            .List(.ListCount - 1, 2) = rngCell.Offset(0, 3).Value ' 3 = Bezeichnung
            .List(.ListCount - 1, 3) = rngCell.Offset(0, 4).Value ' 4 = Kategorie
            .List(.ListCount - 1, 4) = Format(rngCell.Offset(0, 5).Value, "#,##0.00 €") ' 5 = Miete
            .List(.ListCount - 1, 5) = Format(rngCell.Offset(0, 6).Value, "#,##0.00 €") ' 6 = Garage
            .List(.ListCount - 1, 6) = Format(rngCell.Offset(0, 7).Value, "#,##0.00 €") ' 7 = NK
            .List(.ListCount - 1, 7) = Format(rngCell.Offset(0, 8).Value, "#,##0.00 €") ' 8 = Aus
            .TextAlign = fmTextAlignRight
            .ColumnWidths = "2cm;4cm;4cm;4cm;2.5cm;2.5cm;2.5cm;2.5cm" ' Spaltenbreiten
        End With
    End Sub
  4. Passe die Zeile Set rngCell = ThisWorkbook.Sheets("DeinBlatt").Range("A1") an deinen spezifischen Arbeitsblatt- und Zellbereich an.

  5. Führe das Makro aus, um die Listbox zu formatieren.


Häufige Fehler und Lösungen

  • Problem: Die Ausrichtung funktioniert nicht wie erwartet.

    • Lösung: Überprüfe, ob die TextAlign-Eigenschaft an der richtigen Stelle gesetzt wird. Sie sollte nach dem Hinzufügen der Items zugewiesen werden.
  • Problem: Die Spaltenbreiten werden nicht korrekt angezeigt.

    • Lösung: Stelle sicher, dass die Werte in der ColumnWidths-Eigenschaft korrekt formatiert sind und zu den jeweiligen Spalten passen.

Alternative Methoden

Eine alternative Methode zur visuellen Anpassung der Listbox ist die Verwendung von Leerstellen. Du kannst Leerzeichen vor den Text in den rechtenbündigen Spalten hinzufügen, um sie rechtsbündig erscheinen zu lassen. Dies ist jedoch eine weniger elegante Lösung.


Praktische Beispiele

Hier ist ein einfaches Beispiel für eine Listbox mit unterschiedlichen Textausrichtungen:

Sub BeispielListBox()
    With Me.ListBox1
        .AddItem "Links"  ' Spalte 1
        .AddItem "   Rechts" ' Spalte 2 mit Leerzeichen für Rechtsbündigkeit
    End With
End Sub

In diesem Beispiel wird das zweite Element durch Leerzeichen rechtsbündig dargestellt.


Tipps für Profis

  • Nutze Format-Funktionen, um Zahlen in der Listbox ansprechend darzustellen. Das Formatieren von Währungsbeträgen mit Format(rngCell.Offset(0, 5).Value, "#,##0.00 €") sorgt für ein sauberes Layout.
  • Experimentiere mit der ColumnWidths-Eigenschaft, um sicherzustellen, dass die Listbox die richtige Breite hat und die Benutzerfreundlichkeit verbessert wird.

FAQ: Häufige Fragen

1. Kann ich die Listbox auch in Excel Online verwenden?
Nein, die beschriebenen VBA-Funktionen sind nur in der Desktop-Version von Excel verfügbar.

2. Gibt es eine Möglichkeit, die Listbox dynamisch anzupassen?
Ja, du kannst die Listbox dynamisch anpassen, indem du die Werte aus einer Datenquelle oder Tabelle in Echtzeit aktualisierst.

3. Wie kann ich die Listbox in einem Formular verwenden?
Füge die Listbox zu einem UserForm hinzu und verwende die gleichen Methoden, um die Inhalte zu formatieren.

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