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

Forumthread: Farb wechsel bei klick

Farb wechsel bei klick
Pit
Guten Morgen,
ich hätte mal wieder eine Frage.
Ist es in Excel möglich, dass sich die Schriftfarbe bzw. und/oder die Hintergrundfarbe einer Zelle ändert wenn man mit der Maus diese Zelle anglickt. Die Zelle soll die Angenommene Farbe anschließend behalten. evtl. erst bei erneutem anklicken wieder wechseln.
Viele Grüße
Peter
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
mit VBA ...
01.11.2011 04:50:58
Matthias
Hallo Peter
... könnte man das z.B. so lösen
Code ins Tabellenblatt
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
With ActiveCell
If .Interior.ColorIndex = 6 Then .Interior.ColorIndex = xlNone: Exit Sub
If .Interior.ColorIndex = xlNone Then .Interior.ColorIndex = 6: Exit Sub
End With
End Sub
Per Doppelklick in eine Zelle wird die Hintergrundfarbe gesetzt oder wieder entfernt
Analog kann man das auch mit der Schriftfarbe machen
Gruß Matthias
Anzeige
AW: Farb wechsel bei klick
01.11.2011 07:41:36
Hajo_Zi
Hallo Peter,
falls beim Wechsel wieder die alte Farbe hergestellt werden sollund falls mal mehr als eine Zelle ausgewählt wird schaue hier
http://www.hajo-excel.de/inhalt_vba_markieren.htm

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Schrift- und Hintergrundfarbe in Excel per Klick ändern


Schritt-für-Schritt-Anleitung

Um die Schrift- oder Hintergrundfarbe in Excel automatisch zu ändern, wenn du auf eine Zelle klickst, kannst du VBA (Visual Basic for Applications) nutzen. Hier ist eine einfache Anleitung:

  1. Öffne Excel und lade die Arbeitsmappe, in der du die Funktion implementieren möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Doppelklicke auf das entsprechende Tabellenblatt im Projektfenster, in dem du die Änderungen vornehmen möchtest.

  4. Füge den folgenden Code in das Codefenster ein:

    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
       Cancel = True
       With ActiveCell
           If .Interior.ColorIndex = 6 Then 
               .Interior.ColorIndex = xlNone: Exit Sub
           End If
           If .Interior.ColorIndex = xlNone Then 
               .Interior.ColorIndex = 6: Exit Sub
           End If
       End With
    End Sub
  5. Schließe den VBA-Editor und kehre zu Excel zurück.

  6. Doppelklicke auf eine Zelle, um die Hintergrundfarbe zu ändern oder zurückzusetzen.

Dieser einfache VBA-Code sorgt dafür, dass sich die Hintergrundfarbe einer Zelle ändert, wenn du sie doppelt anklickst. Du kannst die ColorIndex-Werte nach Belieben anpassen, um andere Farben zu verwenden.


Häufige Fehler und Lösungen

  • Fehler: Der Code funktioniert nicht.

    • Lösung: Stelle sicher, dass du den Code im richtigen Tabellenblatt (z.B. „Tabelle1“) eingefügt hast und dass Makros in Excel aktiviert sind.
  • Fehler: Die Schriftfarbe ändert sich nicht.

    • Lösung: Um die Schriftfarbe zu ändern, kannst du eine ähnliche Struktur wie im obigen Code verwenden, aber .Font.ColorIndex anstelle von .Interior.ColorIndex verwenden.

Alternative Methoden

Eine weitere Möglichkeit, um die Schriftfarbe in Excel zu ändern, besteht darin, bedingte Formatierungen zu verwenden. Hierbei kannst du bestimmte Bedingungen festlegen, unter denen die Schriftfarbe automatisch wechselt.

  1. Wähle die Zelle oder den Bereich aus.
  2. Gehe zu „Start“ > „Bedingte Formatierung“ > „Neue Regel“.
  3. Wähle „Formel zur Ermittlung der zu formatierenden Zellen verwenden“ und gib deine Bedingungen ein.
  4. Wähle die gewünschte Schrift- oder Hintergrundfarbe aus.

Praktische Beispiele

  • Wenn du eine Zelle mit einer bestimmten Farbe hinterlegen möchtest, z.B. Gelb (ColorIndex 6), kannst du den Code entsprechend anpassen:

    If .Interior.ColorIndex = 6 Then 
      .Interior.ColorIndex = xlNone
    Else 
      .Interior.ColorIndex = 6
    End If
  • Möchtest du die Schriftfarbe ändern, kannst du den Code wie folgt ergänzen:

    If .Font.ColorIndex = 3 Then 
      .Font.ColorIndex = xlNone
    Else 
      .Font.ColorIndex = 3
    End If

Tipps für Profis

  • Experimentiere mit verschiedenen ColorIndex-Werten, um eine breite Palette von Farben zu nutzen.
  • Nutze die RGB-Funktion, um benutzerdefinierte Farben zu definieren, z.B. .Interior.Color = RGB(255, 0, 0) für Rot.
  • Denke daran, deine Änderungen regelmäßig zu speichern, um Verlust von Daten zu vermeiden.

FAQ: Häufige Fragen

1. Kann ich die Funktion auch für mehrere Zellen gleichzeitig anwenden? Ja, du kannst den Code so anpassen, dass er für einen Zellbereich funktioniert. Verwende dazu eine Schleife, um jede Zelle im Bereich zu durchlaufen.

2. Wie kann ich die Schriftfarbe ändern, wenn die Hintergrundfarbe bereits gesetzt ist? Du kannst eine zusätzliche Bedingung im VBA-Code einfügen, um die Schriftfarbe basierend auf der Hintergrundfarbe zu ändern.

3. Funktioniert das auch in Excel Online? Leider ist VBA nicht in Excel Online verfügbar. Du musst die Desktop-Version von Excel verwenden, um diese Funktion zu nutzen.

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