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

Forumthread: Listbox Font für bestimmte Einträge ändern

Listbox Font für bestimmte Einträge ändern
18.01.2005 10:40:28
Dennis
Hallo an alle,
ich habe folgendes Problem, ich habe ein Formular, welches sich Daten aus einer Exceltabelle holt und mit diesen Daten eine Listbox füllt.
Jetzt müssten bestimmte Listelemente Fettgedruckt sein, man kann zwar alles auf
Fett setzten mit Listbox.Font.Box = True, aber ich möchte nur bestimmte
Einträge Fett gedruckt haben,meine Listbox hat 8 Spalten, und eine Menge Zeilen.
Wie kann ich auf einzelne Elemente der Listbox die Font Eigenschaft anwenden, zB.
ListBox(row,column).Font.
Bin für Tips und Hilfe sehr dankbar.
MfG Dennis
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox Font für bestimmte Einträge ändern
u_
Hallo,
das geht nicht.
Gruß
AW: Listbox Font für bestimmte Einträge ändern
Dennis
Hallo,
danke für die Antwort, kann man ganze Zeilen in Fettdruck machen, zum Beispiel Zeile
3 und 10 ?
MfG Dennis
AW: Listbox Font für bestimmte Einträge ändern
u_
Hallo,
in der LB? Nein. Alle Einträge einer LB haben das gleiche Format.
Gruß
Anzeige
AW: Listbox Font für bestimmte Einträge ändern
Dennis
Gibt es die Möglichkeit, den Columnheader oder Rowsource zu definieren?
Das würde mir auch weiterhelfen, dann könnte ich zunächst erstmal
den Tabellenkopf anders formatieren.
Gib es so was in der art:
Listbox.ColumnHeader(0).Name = "Bestellnummer"
Mit Rowsounce kann ich es leider nicht machen, da sich die Quelle immer ändert.
Mfg Dennis
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Listbox Font für bestimmte Einträge ändern


Schritt-für-Schritt-Anleitung

Um die Schriftart bestimmter Einträge in einer Listbox in Excel VBA zu ändern, kannst du die folgenden Schritte befolgen:

  1. Öffne dein Excel-Dokument und gehe in den VBA-Editor (Alt + F11).

  2. Füge ein UserForm hinzu, falls du noch keines hast (Rechtsklick auf "VBAProject" > Einfügen > UserForm).

  3. Füge eine Listbox zu deinem UserForm hinzu (Wähle die ListBox aus der Toolbox aus und ziehe sie in das Form).

  4. Fülle die Listbox mit Daten aus einer Excel-Tabelle. Beispiel:

    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Daten") ' Ändere "Daten" zu deinem Blattnamen
    ListBox1.List = ws.Range("A1:C10").Value ' Füllt die Listbox mit Werten
  5. Definiere die Schriftart für bestimmte Einträge. Leider ist es nicht möglich, die Schriftart einzelner Listbox-Einträge direkt zu ändern. Ein Workaround könnte jedoch sein, die Listbox in eine ListView-Steuerung zu ändern, wo du mehr Formatierungsoptionen hast.


Häufige Fehler und Lösungen

  • Problem: Du kannst die Schriftart einzelner Listeneinträge nicht ändern.

    • Lösung: Verwende eine ListView-Steuerung, wenn du unterschiedliche Schriftarten für verschiedene Einträge benötigst.
  • Problem: Listbox zeigt keine Daten an.

    • Lösung: Überprüfe, ob der Range korrekt angegeben ist und dass die Datenquelle nicht leer ist.

Alternative Methoden

Wenn die Listbox nicht die gewünschte Funktionalität bietet, kannst du folgende Alternativen in Betracht ziehen:

  • Verwende eine ListView: Diese bietet mehr Flexibilität in der Formatierung und kann verschiedene Schriftarten für unterschiedliche Einträge unterstützen.

  • Erstelle eine eigene Benutzeroberfläche: Mit Labels und Textfeldern kannst du eine benutzerdefinierte Liste erstellen, die dir volle Kontrolle über die Schriftarten und das Layout gibt.


Praktische Beispiele

Hier ist ein einfaches Beispiel, wie du eine ListView in deinem UserForm nutzen kannst:

  1. Füge eine ListView-Steuerung zu deinem UserForm hinzu.
  2. Setze die Eigenschaften:

    With ListView1
       .View = lvwReport
       .ColumnHeaders.Add , , "Bestellnummer", 1000
       .ColumnHeaders.Add , , "Produkt", 1000
       .ListItems.Add , , "001"
       .ListItems(1).SubItems(1) = "Produkt A"
       .ListItems.Add , , "002"
       .ListItems(2).SubItems(1) = "Produkt B"
       .ListItems(1).Font.Bold = True ' Setze Eintrag 001 auf Fett
    End With

Tipps für Profis

  • Nutze die Eigenschaften der ListView: Die ListView-Steuerung bietet viele Formatierungsoptionen, die du in der Listbox nicht findest.

  • Dynamische Datenquelle: Verwende VBA, um die RowSource dynamisch zu setzen, damit deine Listbox immer aktuell bleibt.

  • Vermeide unnötige Komplexität: Wenn du nur einfache Listen anzeigen möchtest, bleibe bei der Listbox, aber wechsele zur ListView, wenn du mehr Anpassungen benötigst.


FAQ: Häufige Fragen

1. Kann ich die Schriftart für die gesamte Listbox ändern? Ja, du kannst die gesamte Schriftart der Listbox ändern, indem du ListBox1.Font.Bold = True verwendest, jedoch nicht für einzelne Einträge.

2. Gibt es eine Möglichkeit, die Spaltenüberschriften einer Listbox zu formatieren? Nein, Listboxes in Excel bieten keine Möglichkeit zur individuellen Formatierung von Spaltenüberschriften. Verwende stattdessen eine ListView für mehr Flexibilität.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige