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

Listbox Textfarbe bei Wertänderung Rot?

Forumthread: Listbox Textfarbe bei Wertänderung Rot?

Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 12:35:45
bassi
Halle liebe Excelgemeinde,
vielleicht beschreibe ich mein Problem irgendwie falsch - aber ich finde keine Lösung im Netz :-(
Vielleicht weiß jemand Rat?
Folgende Situation:
Userfom1 beeinhaltet Listbox1 und Spinbutton1.
Listbox1 gibt den Wert von B1 aus.
Spinbutton1 ändert den Wert in B1.
Soweit so gut...
Ist nun der Wert von B1 ungleich dem Wert von A1 - soll aber die Schriftfarbe von Listbox1 auf Rot (oder so) wechseln.
Vielen Dank im Voraus
bassi

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 13:13:35
Peter
Hallo bassi,
du kannst in einer ListBox nur alles in einer Farbe anzeigen, keine einzelnen Zeilen oder Werte.
Gruß Peter

AW: Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 13:35:53
bassi
Hallo Peter,
vielen Dank für deine Nachricht.
Ich will nochmal kurz sortieren bevor ich aufgebe.
Man kann also tatsächlich die unter Fonts eingestellte "Hauptfarbe" später per vba in Verbindung mit irgendwelchen Ereignissen nicht mehr ändern?
Die Listbox Schriftfarbe, von mir aus auch Hintergrundfarbe ist also einmal eingestellt für immer festgelegt?
:-(
Das ist aber echt unschön...
Viele Grüße
bassi

Anzeige
AW: Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 13:36:38
bassi
huch... hacken vergessen

AW: Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 14:18:31
Sepp
Hallo Bassi,
vom Prinzip her so.
Private Sub SpinButton1_Change()
With Tabelle1
  .Range("B1") = SpinButton1.Value
  If .Range("B1") <> .Range("A1") Then
    ListBox1.ForeColor = RGB(255, 0, 0)
  Else
    ListBox1.ForeColor = RGB(0, 0, 0)
  End If
End With
End Sub

Gruß Sepp

Anzeige
AW: Listbox Textfarbe bei Wertänderung Rot?
31.10.2015 14:26:42
bassi
jawollja...
Sepp! Ich danke Dir herzlichst!
Funktioniert tadellos!
*verneig*
beste Grüße
bassi
;
Anzeige

Infobox / Tutorial

Listbox Textfarbe bei Wertänderung Rot ändern


Schritt-für-Schritt-Anleitung

Um die Textfarbe einer ListBox in Excel VBA zu ändern, wenn der Wert in einer bestimmten Zelle verändert wird, kannst Du die folgenden Schritte ausführen:

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
  2. Füge ein UserForm hinzu, falls Du noch keines hast. Gehe dazu zu „Einfügen“ > „UserForm“.
  3. Füge eine ListBox (ListBox1) und einen SpinButton (SpinButton1) zu Deinem UserForm hinzu.
  4. Klicke mit der rechten Maustaste auf das UserForm und wähle „Code anzeigen“.
  5. Füge den folgenden VBA-Code in das Codefenster ein:
Private Sub SpinButton1_Change()
    With Tabelle1
        .Range("B1") = SpinButton1.Value
        If .Range("B1") <> .Range("A1") Then
            ListBox1.ForeColor = RGB(255, 0, 0) ' Rot
        Else
            ListBox1.ForeColor = RGB(0, 0, 0) ' Schwarz
        End If
    End With
End Sub
  1. Schließe den VBA-Editor und teste die Funktionalität, indem Du den SpinButton benutzt.

Häufige Fehler und Lösungen

  • Fehler: ListBox zeigt keine Farbe an.

    • Lösung: Stelle sicher, dass Du die ListBox korrekt referenzierst. Überprüfe, ob der Name der ListBox in Deinem Code mit dem Namen in Deinem UserForm übereinstimmt.
  • Fehler: SpinButton funktioniert nicht.

    • Lösung: Stelle sicher, dass die Eigenschaften des SpinButtons korrekt eingestellt sind (z. B. Min und Max Werte).

Alternative Methoden

Falls Du keine VBA-Lösungen verwenden möchtest, kannst du auch bedingte Formatierungen in Excel nutzen. Diese sind jedoch nicht direkt für ListBoxen anwendbar, sondern nur für Zellen. Eine alternative Methode könnte die Verwendung von Formeln in Zellen sein, die die gewünschten Werte anzeigen und formatieren.


Praktische Beispiele

Hier ist ein einfaches Beispiel zur Veranschaulichung:

  • Beispiel: Angenommen, Du hast in Zelle A1 den Wert 10 und die ListBox zeigt den Wert aus Zelle B1 an. Wenn B1 über den SpinButton auf 15 gesetzt wird, ändert sich die Schriftfarbe in der ListBox zu Rot, da der Wert ungleich A1 ist.

Tipps für Profis

  • Nutze die UserForm_Initialize Methode, um Deine ListBox beim Start der UserForm zu befüllen.
  • Experimentiere mit weiteren Farben, indem Du die RGB-Werte anpasst.
  • Überlege, ob Du weitere Steuerelemente (z. B. ComboBox) hinzufügen möchtest, um die Benutzerinteraktion zu verbessern.

FAQ: Häufige Fragen

1. Kann ich die Textfarbe in der ListBox für jede Zeile individuell ändern? Leider unterstützt Excel VBA keine unterschiedliche Schriftfarbe für verschiedene Zeilen in einer ListBox.

2. Funktioniert dieser Code in allen Excel-Versionen? Ja, der vorgestellte Code sollte in allen modernen Excel-Versionen funktionieren, die VBA unterstützen.

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