Zellen vergleichen
Hallo zusammen,
Ich möchte gerne, das Excel Prüft ob in einer Zelle ein Wert mit einer bestimmten Hintergrundfarbe ist.
Zum Beispiel Zelle A1 hat den Wert 1 und Hintergrundfarbe ist Rot.
Die Zellen A1-F1stehen für Montag,Dienstag, usw.
Wenn ich jetzt Montag in A1 einen Wert eingebe mit der Bedingten Formartierung bei Plus Werten Grün, bei Minus Werten Rot soll Excell eine bestimme Zelle in diese Farbe anzeigen.
Das bekomme ich hin, mit
If Range("A1").Interior.ColorIndex = xlNone Then
Range("b4").Interior.ColorIndex = xlNone
Range("b4").ClearContents
ElseIf Range("A1").Interior.ColorIndex = 3 Then
Range("b4").Interior.ColorIndex = 3
Range("b4").Font.ColorIndex = 2
Range("b4") = "rot"
ElseIf Range("A1").Interior.ColorIndex = 10 Then
Range("b4").Interior.ColorIndex = 10
Range("b4").Font.ColorIndex = 2
Range("b4") = "grün"
End If
Jetzt möchte ich den Dienstag (A2) überprüfen, allerdings soll dann auch die Hintergrundfarbe von Montag(A1) Transparant werden. Das ganze halt bis Samstag (F1).
Wie gehe ich da am besten vor ?
Gruß Ralf
Antwort schreiben
Antwort 1 von coros vom 01.11.2019, 13:35 Options
Hallo Ralf,
Du veränderst also die Schriftfarben einiger Werte über die bedingte Formatierung? Ist das Richtig?
Wenn ja, hast Du das von Dir aufgeführte Makro mal probiert? Ich glaube kaum? Denn die Farben der bedingten Formatierung abzufragen ist nicht so einfach, wie Du es hier mit Deinem Makro hinstellst.
Daher meine Frage, ob Du die Schriftfarben über die bedingte Formatierung änderst. Wenn dem so ist, wird es schwierig, da etwas zu erarbeiten.
Besteht die Möglichkeit, dass man die Änderung der Schriftfarben ebenfalls über VBA macht, z.B. über eien Case-Anweisung? Denn dann kann man, so wie in Deinem aufgeführten Makro, die Indexfarbwerte abfragen. Allerdings müsste man dann erst mal wissen, nach welchen Kriterien die Schriftfarbe sich ändert.
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von RalfH vom 02.11.2019, 06:45 Options
Guten Morgen und vielen Dank für die nette Hilfe.
Ich Frage eigentlich die Hintergrundfarbe der betreffenden Zellen ab, und wenn diese ermittelt sind setze ich die entsprechende andere Zelle in der selben Farbe.
Das klappt auch ganz gut.
Die Kriterien dazu sind dieselben, wie in meiner Frage beschrieben:
Zitat:
Wenn ich jetzt Montag in A1 einen Wert eingebe mit der Bedingten Formartierung bei Plus Werten Grün, bei Minus Werten Rot
Das ganze realisiere ich zur Zeit mit der IF Then Else Konstruktion.
Das Problem ist, das wenn ich zum Beispiel Montag fertig habe und den Dienstag abfrage, dort allerdings noch keine Werte enthalten sind, Excel eigentlich auch nichts verändern sollte.
Ich glaube da müsste noch ne Schleifekonstruktion bei, ich weiss allerdings nicht wie.
Gruß Ralf
Antwort 3 von coros vom 02.11.2019, 06:57 Options
Hallo Ralf,
schön, aber Du hast meine Frage nicht beantwortet. Du schreibst in Deiner 1. Frage
Zitat:
Wenn ich jetzt Montag in A1 einen Wert eingebe mit der Bedingten Formartierung bei Plus Werten Grün, bei Minus Werten Rot soll Excell eine bestimme Zelle in diese Farbe anzeigen
Wie werden nun also die Farben geändert? Durch die bedingte Formatierung, wie in Deinem 1. Beitrag geschrieben oder durch ein Makro?
MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.