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

Hintergrundfarbe mit Makro ändern

Forumthread: Hintergrundfarbe mit Makro ändern

Hintergrundfarbe mit Makro ändern
12.12.2002 16:58:19
Matthias H.
Hallo,

ich möchte eine "unsichtbare" Zelle (grauer Hintergrund mit grauer Schrift) mit Hilfe eines Makros "sichtbar" machen (Schriftfarbe ändern).
Im Forum habe ich zwar schon einen Beitrag dazu gelesen (von Georg), aber die Lösung war für mich nicht ganz nachvollziehbar.


Gruß
Matthias

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Hintergrundfarbe mit Makro ändern
12.12.2002 17:01:05
Chris
Range("A1").Interior.ColorIndex = xlNone
Range("A1").Font.ColorIndex = 0


Hallo Matthias

Obiges Makro bezieht sich auf Zelle A1.

Gruss
Chris

Re: Hintergrundfarbe mit Makro ändern
12.12.2002 17:02:16
L.Vira
sub farbe()
[a1].interior.colorindex = 5
end sub
Danke Euch beiden, und noch ne Frage
12.12.2002 17:17:33
Matthias H.
Danke für die schnellen Antworten!
Gibt es eine Art Taster-Funktion, bei der die Hintergrundfarbe nur solange geändert wird wie ich den Button drücke?

Gruß
Matthias

Anzeige
Klar geht das...
12.12.2002 17:23:01
L.Vira
Es muss ein Commandbutton as der Steuerelemente- Toolbox sein
In den Eigenschaften muss TakeFocusOnClick auf False eingestellt sein. Der Code gehört in das Modul der Tabelle:

Option Explicit
Private Sub CommandButton1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
ActiveCell.Interior.ColorIndex = 5
End Sub
Private Sub CommandButton1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
ActiveCell.Interior.ColorIndex = xlNone
End Sub

Anzeige
Button will nicht so...
12.12.2002 17:40:56
Matthias H.
Hallo L.Vira,

ich habe einen o.g. Button erzeugt und deinen Code eingefügt. Allerdings kann ich ihn nicht anklicken. Wenn ich mit der Maus draufgehe, erscheint ein Pfeil mit 4 Spitzen.
Was nun?

Matthias

Re: Button will nicht so...
12.12.2002 17:46:28
L.Vira
du kennst dich mit VBA gar nicht aus, stimmts?
Du musst erst den Entwurfsmodus beenden, das ist das Symbol
ganz links oben in der Symbolleiste Steuerelemente- Toolbox.
Anzeige
Re: Button will nicht so...
12.12.2002 18:16:21
Matthias H.
Naja, ich bin halt Autodidakt. Dank des Forums, und solch hilfsbereiten Leuten wie Dir ist einiges schon klarer. Mit Steuerelementen hatte ich noch nichts gemacht. Aber jetzt habe ich wieder was dazu gelernt.
Vielen Dank!
Matthias
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Hintergrundfarbe in Excel mit VBA ändern


Schritt-für-Schritt-Anleitung

Um die Hintergrundfarbe einer Zelle in Excel mithilfe von VBA zu ändern, kannst Du die folgenden Schritte befolgen:

  1. Öffne Excel und gehe zu dem Arbeitsblatt, in dem Du die Hintergrundfarbe ändern möchtest.

  2. Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  3. Füge ein neues Modul hinzu:

    • Klicke mit der rechten Maustaste auf "VBAProject (DeinArbeitsblattname)".
    • Wähle "Einfügen" und dann "Modul".
  4. Gib den folgenden Code ein, um die Hintergrundfarbe einer Zelle zu ändern:

    Sub ÄndereHintergrundfarbe()
       Range("A1").Interior.ColorIndex = 5 ' Setzt die Hintergrundfarbe auf Blau
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Führe das Makro aus:

    • Drücke ALT + F8, wähle ÄndereHintergrundfarbe aus und klicke auf "Ausführen".

Häufige Fehler und Lösungen

  • Fehler: "Excel Hintergrundfarbe lässt sich nicht ändern"

    • Überprüfe, ob die Zelle möglicherweise geschützt ist. Entferne den Schutz, um Änderungen vorzunehmen.
  • Fehler: "VBA zellenfarbe ändern funktioniert nicht"

    • Stelle sicher, dass Du die Zelle korrekt referenzierst (z. B. Range("A1")).
  • Probleme mit dem CommandButton:

    • Wenn der Button nicht klickbar ist, stelle sicher, dass Du den Entwurfsmodus beendet hast.

Alternative Methoden

Eine weitere Möglichkeit, die Hintergrundfarbe zu ändern, ist die Verwendung eines CommandButtons:

  1. Füge einen CommandButton aus der Steuerelement-Toolbox hinzu.
  2. Setze die TakeFocusOnClick-Eigenschaft auf False.
  3. Verwende diesen Code im Modul der Tabelle:

    Private Sub CommandButton1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
       ActiveCell.Interior.ColorIndex = 5 ' Setzt die Hintergrundfarbe auf Blau
    End Sub
    
    Private Sub CommandButton1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
       ActiveCell.Interior.ColorIndex = xlNone ' Setzt die Hintergrundfarbe zurück
    End Sub

Praktische Beispiele

  • Beispiel 1: Hintergrundfarbe ändern

    Sub SetzeHintergrundfarbe()
      Worksheets("Tabelle1").Range("B2").Interior.Color = RGB(255, 0, 0) ' Rot
    End Sub
  • Beispiel 2: Zellenfarbe ändern basierend auf einem Wert

    Sub FärbeZellen()
      Dim Zelle As Range
      For Each Zelle In Range("A1:A10")
          If Zelle.Value > 10 Then
              Zelle.Interior.ColorIndex = 3 ' Rot
          Else
              Zelle.Interior.ColorIndex = 4 ' Grün
          End If
      Next Zelle
    End Sub

Tipps für Profis

  • Nutze die RGB-Funktion für genauere Farbauswahl: RGB(Red, Green, Blue).
  • Experimentiere mit der ColorIndex-Eigenschaft, um vordefinierte Farben zu verwenden.
  • Setze Bedingte Formatierungen ein, um die Zellenfarbe dynamisch basierend auf den Zellenwerten zu ändern.

FAQ: Häufige Fragen

1. Wie ändere ich die Hintergrundfarbe mehrerer Zellen gleichzeitig?
Du kannst eine Range angeben, z. B. Range("A1:B10").Interior.ColorIndex = 5.

2. Warum funktioniert mein VBA Code nicht?
Stelle sicher, dass Du den Makrosupport in Excel aktiviert hast und dass keine Syntaxfehler im Code vorliegen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige