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

Forumthread: Command Button Farbe ändern

Command Button Farbe ändern
12.03.2019 08:52:04
Alex
Hallo,
ist es möglich dass man die Farbe des Comman Button durch eine Abfrage wechseln lässt ?
Wenn in Spalte A ein Datum dieser Woche wäre sollte der Button Rot werden.
Danke für die Hilfe :)
Anzeige

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Command Button Farbe ändern
12.03.2019 09:35:55
Armin
Hallo Alex,
mir fällt dazu nur VBA ein.
AW: Command Button Farbe ändern
12.03.2019 09:46:46
Alex
Das es nur mit VBA zu lösen ist, ist mir klar ;) Wie müsste so ein Code aussehen ?
Leider bin ich noch sehr schwach was VBA angeht :(
AW: Command Button Farbe ändern
12.03.2019 09:57:45
Armin
Hallo Alex,
willst Du die ganze Spalte also mehr als eine Million Zeilen prüfen? Das solltest Du aber etwas einschränken sonst kann die Antwort etwas auf sich warten lassen.
Gruß Armin
Anzeige
AW: Command Button Farbe ändern
12.03.2019 10:07:43
Armin
Hallo Alex,
welche Aktion (Event) soll die Prüfung auslösen?
AW: Command Button Farbe ändern
12.03.2019 10:34:35
Alex
Ich hab hier ein Makro zur Übertragung der Daten, dass würde ich dazu benutzen um das Eevent auszulösen. Bennenen wir es einfach mal Makro1
AW: Command Button Farbe ändern
12.03.2019 10:39:03
Beverly
Hi Alex,
vielleicht eine Möglichkeit:
    Dim lngDatum As Long
Dim intZaehler As Integer
Dim datMontag As Date
datMontag = Date - Application.Weekday(Date, 2) + 1
For intZaehler = 0 To 6
lngDatum = Application.CountIf(Worksheets("Tabelle1").Columns(1), _
datMontag + intZaehler)
If lngDatum > 0 Then Exit For
Next intZaehler
If lngDatum > 0 Then
Worksheets("Tabelle1").CommandButton1.BackColor = &HFF&
Else
Worksheets("Tabelle1").CommandButton1.BackColor = &H8000000F
End If


Anzeige
AW: Command Button Farbe ändern
12.03.2019 10:43:46
Alex
Danke werde ich ausprobieren :) Kann man die Farben auch blinken lassen oder ist das zuviel für Excel ?
AW: Command Button Farbe ändern
12.03.2019 11:09:45
Beverly
Ich nehme an, der Button soll nur blinken wenn die Bedingung erfüllt ist, also ein Datum aus der aktuellen Woche vorhanden ist?
    Dim lngDatum As Long
Dim intZaehler As Integer
Dim datMontag As Date
Dim arrFarbe(1)
Dim f As Boolean
Dim t As Double
Const Pause = 0.5
arrFarbe(0) = &HFF&
arrFarbe(1) = &H8000000F
datMontag = Date - Application.Weekday(Date, 2) + 1
For intZaehler = 0 To 6
lngDatum = Application.CountIf(Worksheets("Tabelle1").Columns(1), _
datMontag + intZaehler)
If lngDatum > 0 Then Exit For
Next intZaehler
intZaehler = 0
If lngDatum > 0 Then
Do
f = Not f
Worksheets("Tabelle1").CommandButton1.BackColor = arrFarbe(-f)
t = Timer + Pause
Do While Timer 


Anzeige
AW: Command Button Farbe ändern
12.03.2019 10:43:47
Armin
Hallo Alex,
lass dieses Makro laufen. Evtl. muss der Name des Button noch angepasst werden. Dieses Makro in Dein vorhandens am Schluss noch aufrufen.
Private Sub PruefeDatum()
Dim Rx As Range
Set Rx = Columns("A").Find(Date)
If Not Rx Is Nothing Then
CommandButton1.BackColor = &HFF&
Else
CommandButton1.BackColor = &H8000000F
End If
End Sub
Gruß Armin
Anzeige
AW: Command Button Farbe ändern
12.03.2019 10:49:27
Alex
Alles kalr werde ich auch Testen, vielen Dank.
AW: Command Button Farbe ändern
12.03.2019 10:31:18
Alex
von Zeile 5 - 64 ist der Bereich pro Spalte
AW: Command Button Farbe ändern
12.03.2019 10:06:39
Daniel
Hi
ich würde hierfür eine Zelle einrichten, welche über die Bedingte Formatierung die Farbe entsprechend annimmt.
Wenn es Anordnung auf dem Blatt zulässt, würde ich dann auch diese Zelle gleich als Button verwenden, indem du über das BeforeDoubleclick-Event einen entsprechenden Code ausführen lässt, wenn ein Doppelklick auf diese Zelle ausgeführt wird.
Wenn es die Anordnung nicht zulässt, dann platzierst du diese Zelle an einer freien stelle, wo du sie so formatieren kannst wie der Button aussehen soll.
dann erstellst du eine verknüpfte Bildkopie dieser Zelle (kopieren und über das Kontextmenü Inhalte einfügen entsprechend einfügen)
diese Bildkopie fügst du dann an der gewünschten Stelle ein und weist ihr über das Kontextmenü das Makro zu, welches in diesem Fall in einem allgemeinen Modul liegen muss.
die erste Variante eignet sich besonders für einen größere Anzahl solcher Buttons.
Gruß Daniel
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Command Button Farbe ändern in Excel


Schritt-für-Schritt-Anleitung

Um die Farbe eines Command Buttons in Excel zu ändern, benötigst du VBA (Visual Basic for Applications). Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den Editor zu öffnen.

  2. Füge einen Command Button ein: Gehe zu „Entwicklertools“, wähle „Einfügen“ und füge einen „Command Button“ hinzu.

  3. Schreibe den VBA-Code: Doppelklicke auf den Button und füge den folgenden Code ein:

    Private Sub CommandButton1_Click()
       Dim lngDatum As Long
       Dim intZaehler As Integer
       Dim datMontag As Date
       datMontag = Date - Application.Weekday(Date, 2) + 1
    
       For intZaehler = 0 To 6
           lngDatum = Application.CountIf(Worksheets("Tabelle1").Columns(1), datMontag + intZaehler)
           If lngDatum > 0 Then Exit For
       Next intZaehler
    
       If lngDatum > 0 Then
           CommandButton1.BackColor = &HFF&
       Else
           CommandButton1.BackColor = &H8000000F
       End If
    End Sub
  4. Schließe den VBA-Editor und teste den Button, indem du auf ihn klickst.


Häufige Fehler und Lösungen

  • Excel Farbe lässt sich nicht ändern: Stelle sicher, dass du die richtigen Farbcodes verwendest. Die VBA-Farbcodes sind in Hexadezimal.
  • Excel Schaltfläche Farbe ändern bei Klick funktioniert nicht: Überprüfe, ob der Code im richtigen Module eingefügt wurde. Der Code muss im „Click“-Ereignis des Buttons stehen.
  • Fehlermeldungen beim Ausführen des Makros: Achte darauf, dass die Referenzen auf die richtige Tabelle und den richtigen Button verweisen.

Alternative Methoden

Wenn du keine VBA-Lösungen verwenden möchtest, kannst du die Farbe von Zellen mit bedingter Formatierung ändern. Dies ist eine einfache Methode, um die Schaltfläche zu simulieren:

  1. Wähle eine Zelle aus, die als Button fungieren soll.
  2. Gehe zu „Bedingte Formatierung“ und wähle „Neue Regel“.
  3. Erstelle eine Regel basierend auf dem Datum, das in Spalte A steht.
  4. Verknüpfe die Zelle mit einem Makro, indem du das „BeforeDoubleClick“-Ereignis nutzt.

Praktische Beispiele

Hier sind einige praktische Beispiele, die dir helfen, die Excel Button Farbe zu ändern:

  1. Ein einfacher Button: Verwende den oben genannten Code, um die Buttonfarbe basierend auf dem Datum in Spalte A zu ändern.
  2. Ein blinkender Button: Du kannst den Button auch blinken lassen, indem du eine Schleife im Code verwendest:

    Do
       f = Not f
       CommandButton1.BackColor = arrFarbe(-f)
       t = Timer + Pause
       Do While Timer < t: DoEvents: Loop
    Loop Until lngDatum = 0

Tipps für Profis

  • Verwende Farbcodes: Experimentiere mit verschiedenen Farbwerten, um die gewünschten Effekte zu erzielen.
  • Button-Namen anpassen: Achte darauf, dass der Name des Command Buttons im Code korrekt ist.
  • Makros optimieren: Reduziere die Anzahl der Zeilen, die geprüft werden, um die Leistung zu verbessern.

FAQ: Häufige Fragen

1. Kann ich die Schriftfarbe des Buttons ändern?
Ja, du kannst die Schriftfarbe des Buttons ebenfalls mit VBA ändern. Verwende CommandButton1.ForeColor für die Schriftfarbe.

2. Wie kann ich den Button farblich ändern, ohne VBA?
Du kannst die bedingte Formatierung nutzen, um eine Zelle farblich zu ändern und diese als Button zu verwenden.

3. Gibt es eine Möglichkeit, mehrere Buttons gleichzeitig zu ändern?
Ja, du kannst eine Schleife in deinem Makro verwenden, um die Farbe aller Command Buttons in einem Arbeitsblatt gleichzeitig zu ändern.

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