Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Geänderte Zellen farbig makieren

Forumthread: Geänderte Zellen farbig makieren

Geänderte Zellen farbig makieren
14.11.2003 09:35:51
Lutz
Hallo Excelcracks,

ich darf mich seit kurzer Zeit mit Excel beschäftigen und sitze hier vor einem Problem, bei dem Ihr mir hoffentlich unter die Arme greifen könnt!?

Ich habe eine Tabellensheet, in dem die Mitarbeiterplanung über den Monat hinweg stattfindet.
In den Zelle O8 bis AS 68 findet die Tagesplanung statt, indem man über eine Gültigkeitsliste Tätigkeitskürzel auswählen kann. Den Zellen ist generell eine Farbe zugewiesen und über die bedingte Formatierung ist das Wochenende in Grau dargestellt.
Für mich besteht nun das Problem, dass
1. bei jeder Änderungen die geänderten Zellen automatisch in einer anderen Farbe (z.B. weiss) dargestellt werden sollen, um die Übersichtlichkeit zu erhöhen.
2. dass eine bedingt formatierte Zelle so einfach nicht entfärbt werden kann, oder?
3. diese markierten Zellen beim nächsten Aufruf der Datei beim Start wieder automatisch zurüchgesetzt werden sollen.
Hat einer ne Idee?
Vielen Dank schon mal im Voraus für´s Nussknacken
Lutz
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Geänderte Zellen farbig makieren
14.11.2003 10:14:06
Galenzo
Hallo Lutz,

der 1. Teil deiner Aufgabe ist relativ einfach:


Private Sub Worksheet_Change(ByVal Target As Range)
    If Not (Intersect(Target, Range("o8:AS66")) Is NothingThen
        Target.Interior.ColorIndex = xlColorIndexNone
    End If
End Sub

Also sobald eine Zelle im angegebenen Bereich geändert wird, wird die hintergrundfarbe dieser Zelle geändert - hier auf "Keine Hintergrundfarbe" [xlColorIndexNone], da kannst du dann aber auch andere Werte (z.B. 33) - also als Zahl - eintragen.

Damit:


Private Sub Workbook_Open()
    Sheets("Tabelle1").Range("o8:AS66").Interior.ColorIndex = 22
End Sub

wird beim Öffnen der Datei der benannte Bereich der "Tabelle1" wieder eingefärbt.

Bei den bedingt formatierten Zellen wird's schwieriger...

mfg
Anzeige
AW: Geänderte Zellen farbig makieren
14.11.2003 12:00:35
Lutz
Hai Galenzo,

genial! Danke für die Hilfe, weil so soll es genau sein! Uffffff.........

Falls Jemand eine Idee zu den bedingt formatierten Zellen hat, lasst es mich wissen, denn dann wäre die Sache absolut rund!

Merci vielmals
Lutz
AW: Geänderte Zellen farbig makieren
14.11.2003 12:45:50
Galenzo
Hallo Lutz - nochmal,

das hat mir dann doch keine Ruhe gelassen. Mein Vorschlag:


Private Sub Workbook_Open()
Dim rng As Range
Application.ScreenUpdating = False
    Sheets("Tabelle1").Range("o8:AS66").Interior.ColorIndex = 22
    For Each rng In Sheets("Tabelle1").Range("o8:AS66")
        If rng.FormatConditions.Count > 0 Then
              rng.FormatConditions(1).Interior.ColorIndex = 17
        End If
    Next
Application.ScreenUpdating = False
End Sub

-und:

Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Intersect(Target, Range("o8:AS66")) Is NothingThen
    Target.Interior.ColorIndex = xlColorIndexNone
    If Target.FormatConditions.Count > 0 Then
        Target.FormatConditions(1).Interior.ColorIndex = xlColorIndexNone
    End If
End If
End Sub

Ich hoffe, das ist es jetzt...
Der Einfachheit halber wird nur die 1. bedingte Formatierung verändert. Wenn du mehrere Bedingungen hast, müßte an diesen Stellen noch mit einer kleinen for..next-Schleife alle Bedingungen durchlaufen werden.

mfg
Anzeige
AW: Geänderte Zellen farbig makieren
14.11.2003 13:37:46
Lutz
Yap!

Perfekt! Meine Hochachtung, und gibt mir wenigstens das Gefühl, dass es nicht ganz so einfach war, wenn ich schon einen Profi zu "basteln" motivieren konnte.

Nochmals Tausend Dank
Lutz
Danke für Rückmeldg. (oT)
14.11.2003 13:46:39
Galenzo
;
Anzeige

Infobox / Tutorial

Geänderte Zellen farbig markieren in Excel


Schritt-für-Schritt-Anleitung

Um geänderte Zellen in Excel farbig zu markieren, kannst Du VBA (Visual Basic for Applications) verwenden. Folge diesen Schritten:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge einen neuen Code ein:

    • Klicke auf Einfügen > Modul.
  3. Gib den folgenden Code ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not (Intersect(Target, Range("O8:AS68")) Is Nothing) Then
           Target.Interior.ColorIndex = xlColorIndexNone
       End If
    End Sub
  4. Füge den Code zum Zurücksetzen der Farben hinzu:

    Private Sub Workbook_Open()
       Sheets("Tabelle1").Range("O8:AS68").Interior.ColorIndex = 22
    End Sub
  5. Speichere die Datei als Makro-aktivierte Datei (z.B. .xlsm).

Jetzt werden geänderte Zellen in Deinem definierten Bereich automatisch ohne Hintergrundfarbe angezeigt, und die Farben werden beim Öffnen der Datei zurückgesetzt.


Häufige Fehler und Lösungen

  • Problem: Der Code funktioniert nicht.

    • Lösung: Stelle sicher, dass Du den Code in das richtige Arbeitsblatt-Modul eingefügt hast und dass die Dateiendung .xlsm verwendet wird.
  • Problem: Geänderte Zellen behalten ihre ursprüngliche Farbe.

    • Lösung: Überprüfe, ob die bedingte Formatierung die Zellen überschreibt. Du kannst den Code anpassen, um auch die bedingte Formatierung zu löschen.

Alternative Methoden

Wenn Du keine VBA verwenden möchtest, kannst Du die bedingte Formatierung in Excel nutzen, um geänderte Zellen zu markieren:

  1. Wähle den Bereich O8:AS68 aus.
  2. Gehe zu Start > Bedingte Formatierung > Neue Regel.
  3. Wähle Formel zur Ermittlung der zu formatierenden Zellen verwenden.
  4. Gib folgende Formel ein:
    =O8<>""  // oder eine andere Bedingung
  5. Wähle das gewünschte Format (z.B. Hintergrundfarbe).

Praktische Beispiele

Hier sind konkrete Beispiele, wie der VBA-Code in einer Mitarbeiterplanung verwendet werden kann:

  • Mitarbeiterplanung: Bei jeder Änderung eines Tätigkeitskürzels in den Zellen O8 bis AS68 wird die Hintergrundfarbe auf Weiß geändert.

  • Wochenendmarkierung: Die bedingte Formatierung kann so eingestellt werden, dass Wochenende immer in Grau dargestellt wird, während geänderte Zellen eine andere Farbe erhalten.


Tipps für Profis

  • Verwende die Application.ScreenUpdating = False Funktion, um das Flackern beim Ausführen des Codes zu verhindern.
  • Teste den Code in einer Kopie Deiner Datei, um unbeabsichtigte Änderungen zu vermeiden.
  • Erweitere den Code, um mehrere bedingte Formatierungen zu berücksichtigen, falls notwendig.

FAQ: Häufige Fragen

1. Frage
Wie kann ich die Farben der Zellen dauerhaft ändern?
Antwort: Du kannst die Zellen mit VBA so einstellen, dass sie beim Ändern eine spezifische Farbe erhalten.

2. Frage
Funktioniert dieser Code in Excel 2016?
Antwort: Ja, der VBA-Code sollte in allen modernen Excel-Versionen, einschließlich Excel 2016, funktionieren.

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