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

Forumthread: Zellen färben, wenn sich wert ändert....

Zellen färben, wenn sich wert ändert....
Gordon
Moin,
ich habe mal eine Frage bzgl. Änderungen von Werten. Und zwar am besten hier mal ein Beispiel:
- Ich habe zwei Eingabezellen: A1 und A2
- Wenn ich etwas in A1 reinschreibe, ändern sich per Formel die Ergebnisse in B1 und C1.
- Wenn ich etwas in A2 reinschreibe, ändern sich per Formel die Ergebnisse in B2 und C2.
Nun würde ich es gerne so per Makro haben, dass wenn ich in A1 etwas eingebe, dass sich die Zellen B1 und C1 einfärben. Wenn ich dann in A2 etwas eingebe, sollen sich natürlcih B2 und C2 einfärben und die vorherigen Färbungen bei B1 und C1 wieder verschwinden.

Allgemein: Wenn ich irgendwo etwas eingebe, möchte ich gerne, dass alle Zellen eingefärbt werden die sich in ihren werten durch die Eingabe verändert haben. Ist sowas möglich?

Ich habe mir schon gedacht eine Kopie in des Blattes anzufertigen, so das bei jeder Eingave a) abgeglichen, b) veränderunegn eingefärbt und c) die aktuellen Werte reinkopiert werden. Das müsste zwar gehen, aber wäre dann glaube ich bei jeder Eingabe ein recht großer Aufwand mit Verzögerungen.
Gibt es vielleicht einen Befehl in VBA der die Änderungen von Werten registriert?
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellen färben, wenn sich wert ändert....
06.05.2010 14:16:29
Uppe
Hallo Gordon,
so müsste es klappen:
Private Sub Worksheet_Change(ByVal Target As Range)
Target.Dependents.Interior.ColorIndex = 7
End Sub
Gruß Uppe
AW: Zellen färben, wenn sich wert ändert....
06.05.2010 16:28:09
Hubert
Hallo Uppe
habe das bei mir auch mal ausprobiert.
In VBA beim entsprechenden Tabellenblatt eingetragen.
Bei Änderungen in diesem Tabellenblatt kommt aber immer
aus VBA direkt die Meldung: Laufzeitfehler 1004, Keine Zellen gefunden.
Was mache ich noch verkehrt ?
Hast du evtl. eine Lösung für mich ?
Viele Grüße,
Hubert
Anzeige
das geht schon ...
06.05.2010 16:39:08
Matthias
Hallo
... aber als Du den Code in Dein Sheet übernommen hast, gab es sicher noch keine Formeln darin.
Gruß Matthias
AW: das geht schon ...
06.05.2010 21:47:41
Hubert
Hallo Matthias
hab´s gerade noch mal probiert und vorher die
Zahlen und Formeln reingetan. In B1 / B2 / C1 und C2
die Formeln und eingeben will ich in dem Beispiel auch in A1+A2
Trotzdem die Meldung.
Hier mal die Testdatei.
https://www.herber.de/bbs/user/69463.xls
Scheinbar hab ich irgendwas überhaupt nicht begriffen.
Gruß,
Hubert
Anzeige
kleiner Lesefehler
06.05.2010 22:10:01
Uppe
Hallo Hubert,
Du musst die Zeile in Worksheet_Change eintragen, weil Du eine Reaktion möchtest, wenn Du den Wert in A1 änderst.
Wenn Du es in Worksheet_SelectionChange einträgst, erreichst Du zum einen nur eine Reaktion, wenn eine andere Zelle ausgewählt wird. Zum anderen ist dann Target nicht die aktive Zelle, sondern die Zelle, von der Du kommst und die hat keine Abhängigkeit.
Gruß Uppe
Anzeige
AW: kleiner Lesefehler
06.05.2010 23:01:14
Hubert
Hallo Uppe
Jawohl, das war´s.
Wer weiß wie oft gelesen, aber nie gesehen, dass ich noch Selection mit
drin stehen habe.
Jetzt passt´s !
Danke dir und schönen Abend noch.
Hubert
AW: kleiner Lesefehler
07.05.2010 12:04:59
Gordon
Danke,
funktioniert bei mir einwandfrei....das hilft mir shcon mal sehr weiter.
Nur nun noch mal eine optionale Frage:
Gibt es auch die Möglichkeit es so einzustellen, dass in verschiedenen Farben eingefärbt wird? Z.B. das bei steigenden Werten in den Zellen grün eingefärbt wird und bei gefallenden Werten rot. Ich gehe zwar mal davon aus, dass das nicht so einfach möglich ist, aber ich frage dennoch mal lieber. :-)
Gruß
Gordon
Anzeige
AW: Vergleich Alt und Neu
07.05.2010 13:41:55
hary
Hallo Gordon
meinst Du so? Zelle aendern in SpalteA. Dann sollen sich je nachdem ob groesser oder kleiner sich die Zellen B und C aendern.
https://www.herber.de/bbs/user/69472.xls
gruss hary
zuerst werden mit selection-Change die alten Werte ausgelesen. Erst wenn in SpalteA geaendert wird erfolgt der Vergleich alt gegen neu.
Anzeige
AW: Vergleich Alt und Neu
07.05.2010 17:09:42
Gordon
Super,
genau sowas habe ich gesucht! :-)
danke dir!
Gruß
Gordon
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zellen einfärben in Excel bei Wertänderung


Schritt-für-Schritt-Anleitung

  1. Öffne Excel und gehe zum gewünschten Arbeitsblatt.

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

  3. Finde dein Arbeitsblatt im Projekt-Explorer auf der linken Seite.

  4. Doppelklicke auf das Arbeitsblatt, um das Codefenster zu öffnen.

  5. Füge den folgenden VBA-Code ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Not Intersect(Target, Me.Range("A1:A2")) Is Nothing Then
           Application.EnableEvents = False
           Dim cell As Range
           For Each cell In Target.Dependents
               If cell.Value > cell.Offset(0, -1).Value Then
                   cell.Interior.Color = RGB(0, 255, 0) ' Grün
               ElseIf cell.Value < cell.Offset(0, -1).Value Then
                   cell.Interior.Color = RGB(255, 0, 0) ' Rot
               Else
                   cell.Interior.ColorIndex = xlNone ' Keine Farbe
               End If
           Next cell
           Application.EnableEvents = True
       End If
    End Sub
  6. Schließe den VBA-Editor und gehe zurück zu Excel.

  7. Teste die Funktion, indem du Werte in die Zellen A1 oder A2 eingibst.


Häufige Fehler und Lösungen

  • Laufzeitfehler 1004, Keine Zellen gefunden: Dieser Fehler tritt auf, wenn keine abhängigen Zellen vorhanden sind. Stelle sicher, dass deine Zellen Formeln enthalten, die von den Eingabezellen abhängen.
  • Änderungen werden nicht erkannt: Überprüfe, ob der Code im richtigen Arbeitsblatt-Modul eingefügt wurde (nicht im Modul).
  • Farbe ändert sich nicht: Stelle sicher, dass die EnableEvents-Eigenschaft auf True gesetzt ist, um Änderungen zuzulassen.

Alternative Methoden

Eine alternative Möglichkeit, Zellen in Excel zu färben, ist die Verwendung der Bedingten Formatierung:

  1. Markiere die Zellen B1:C2.
  2. Gehe zu "Start" > "Bedingte Formatierung" > "Regel zum Hervorheben von Zellen".
  3. Wähle "Größer als" oder "Kleiner als" und gib eine entsprechende Bedingung ein.
  4. Wähle die gewünschte Farbe aus und klicke auf "OK".

Diese Methode hat den Vorteil, dass sie ohne VBA funktioniert, jedoch weniger flexibel ist.


Praktische Beispiele

  • Beispiel 1: Wenn du in A1 den Wert 10 und in A2 den Wert 5 eingibst, wird B1 grün und B2 rot, wenn die Formeln in B1 und C1 von A1 bzw. A2 abhängen.
  • Beispiel 2: Bei der Eingabe eines neuen Wertes in A1 oder A2 wird die Hintergrundfarbe der abhängigen Zellen anhand des Vergleichs mit dem vorherigen Wert geändert.

Tipps für Profis

  • Verwende RGB-Farbcodes für präzisere Farbsteuerung.
  • Optimiere deinen Code, indem du nur die Zellen einfärbst, die tatsächlich verändert wurden.
  • Dokumentiere deinen VBA-Code, um anderen (oder dir selbst) das Verständnis zu erleichtern.

FAQ: Häufige Fragen

1. Kann ich mehrere Farben in einer Zelle verwenden?
Nein, eine Zelle kann nur eine Hintergrundfarbe haben. Du kannst jedoch verschiedene Zellen unterschiedlich einfärben.

2. Funktioniert das auch in Excel Online?
Der VBA-Code funktioniert nicht in Excel Online. Du solltest die bedingte Formatierung verwenden, um Zellen zu färben.

3. Wie kann ich die Farben anpassen?
Ändere die RGB-Werte im VBA-Code, um die Farben nach deinen Wünschen anzupassen.

4. Was ist, wenn ich mehr als zwei Zellen habe?
Erweitere einfach den If Not Intersect-Bereich im VBA-Code, um zusätzliche Zellen einzuschließen.

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