Microsoft Excel

Herbers Excel/VBA-Archiv

Zuweisung einer Farbe mit einer WENN-Formel

Betrifft: Zuweisung einer Farbe mit einer WENN-Formel von: Peter Breitschuh
Geschrieben am: 06.10.2007 02:04:19

Liebe VBA-Freundinnen und -Freunde,

ich möchte einer bestimmten Zelle in Abhängigkeit vom Inhalt einer anderen Zelle mithilfe einer WENN-Formel nicht nur einen bestimmten Wert, sondern auch eine Farbe zuweisen, jedoch finde ich die erforderliche Syntax nicht.

Bisherige Formel (ohne Farbe):

ActiveCell.FormulaR1C1 = "=IF(OR(RC[-1]=""d"",RC[-1]=""s"",RC[-1]=""u""),RC[-5],"""")"

in der Zelle sieht das dann so aus:

=WENN(ODER(J10="d";J10="s";J10="u");F10;"")

Gruss
inl1ner

  

Betrifft: Verwende zusätzlich die Bedingte Formatierung von: NoNet
Geschrieben am: 06.10.2007 02:45:23

Hallo Peter,

Du könntest zwar per VBA den Interior.Colorindex (=Hintergrundfarbe) der Zelle verändern, praktikabler erscheint mir hier allerdings die normale Verwendung der Bedingten Formatierung der Zelle (entweder zuvor manuell erstellen oder per VBA über "ActiveCell.FormatConditions.Add").

Gute Nacht, NoNet


  

Betrifft: AW: Verwende zusätzlich die Bedingte Formatierung von: Peter Breitschuh
Geschrieben am: 06.10.2007 03:39:17

Hi NoNet,
danke für Deine Nachricht, aber so weit ich weiß, kann man mit der bedingten Formatierung nur eine Bedingung in derselben Zelle setzen. Ich möchte aber bei einer Änderung der Zelle X die Zelle Y formatieren. Habe ich etwas falsch verstanden ?
Gruss
Peter


  

Betrifft: AW: Verwende zusätzlich die Bedingte Formatierung von: Josef Ehrensberger
Geschrieben am: 06.10.2007 08:16:05

Hallo Peter,

sicher geht das.

Tabelle1

 BCDEFGHIJK
9          
10 5  5   s 
11          

Formeln der Tabelle
ZelleFormel
C10=WENN(ODER(J10="d";J10="s";J10="u"); F10;"")

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat
C101. / Formel ist =ODER(J10="d";J10="s";J10="u")Abc
Excel Tabellen im Web darstellen  Excel Jeanie HTML




Gruß Sepp



  

Betrifft: AW: Verwende zusätzlich die Bedingte Formatierung von: Peter Breitschuh
Geschrieben am: 08.10.2007 11:22:04

Hallo Sepp,

vielen Dank für Deine Nachricht !!!

Diese Lösung wird mir sicher noch oft helfen.

Viele Grüße

Peter


  

Betrifft: oder alternativ schon im Code ... von: Matthias L
Geschrieben am: 06.10.2007 09:40:51

Hallo

Hier kannst Du gleich im Code, der Zelle die bedingte Formatierung zuweisen.


Es wird nicht überprüft, ob schon eine bedingte Formatierung gesetzt ist!
Willst Du evtl. vorhandene bed. Formatierung vorher löschen, baue diese Zeile mit ein:


.FormatConditions.Delete






Ergebnis der bed. Formatierung:



Sub Formel()
With ActiveCell
.FormulaR1C1 = "=IF(OR(RC[-1]=""d"",RC[-1]=""s"",RC[-1]=""u""),RC[-5],"""")"
   .FormatConditions.Add Type:=xlExpression, Formula1:="=" & ActiveCell.Address & "<> """""
   .FormatConditions(1).Interior.ColorIndex = 4
End With
End Sub



Gibst Du nun in J10 einen anderen Wert als d, s oder u ein, liefert Dir Deine Formel einen Leerstring und die
Zelle(Hintergrund) wird farblos.





 

Beiträge aus den Excel-Beispielen zum Thema "Zuweisung einer Farbe mit einer WENN-Formel "