Herbers Excel-Forum - das Archiv

bed. formatierung vba-problem

Bild

Betrifft: bed. formatierung vba-problem
von: hisEXCELlence
Geschrieben am: 05.10.2003 20:23:10
Hallo,

Habe (von Hajo's Excel - Server -danke ) den bedingte-Formatierungs-Code für meine Bedürfnisse angepasst. Das ganze funktioniert soweit auch ganz gut (wenn man in die K-Spalte direkt die Werte "228,3" etc. eingibt. Das Problem besteht nun darin, dass die Werte 228,5 229,3 etc. nicht direkt in die Spalte K eingegeben werden, sondern sich in dieser Spalte eine recht aufwändige WENN Funktion befindet. WENN......;"228,5";wenn....;"229,3" usw.
Wie kann ich das Makro so umändern dass es erkennt, was in der Spalte K AUSGEGEBEN wird ?!

Wäre nett wenn ihr mir helfen könntet, einen schönen Sonntag noch und viele Grüße,
Rüdiger

So sieht das Makro zur Zeit aus:



Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim RaBereich As Range, RaZelle As Range
Set RaBereich = Range("K4:K1000")
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
Select Case UCase(RaZelle.Value)
Case "228,3"
Rows(Target.Row).Interior.ColorIndex = 38
' schwarz
Case "228,5"
Rows(Target.Row).Interior.ColorIndex = 45
' weiß
Case "229,1"
Rows(Target.Row).Interior.ColorIndex = 37
' rot
Case "229,3"
Rows(Target.Row).Interior.ColorIndex = 6
' grün
Case "229,5"
Rows(Target.Row).Interior.ColorIndex = 40
' blau
Case Else
RaZelle.Interior.ColorIndex = xlNone
End Select
End If
Next RaZelle
'    ActiveSheet.protect
Set RaBereich = Nothing
End Sub


Bild

Betrifft: AW: bed. formatierung vba-problem
von: Ramses
Geschrieben am: 05.10.2003 20:57:03
Hallo

das tut doch nichts zur Sache ob das Ergebnis nun aus einer WENN-Funktion kommt oder direkt eingegeben wird.

Du prüfst den derzeitigen Wert der Zelle mit "RaZelle.Value"

Da ich das ganz nicht getestet habe, würde ich aber trotzdem sagen, dass die Anweisung

For Each RaZelle In Range(Target.Address)

nicht korrekt ist, sondern

For Each RaZelle In RaBereich

heissen muss.

Gruss Rainer
Bild

Betrifft: AW: bed. formatierung vba-problem
von: hisEXCELlence
Geschrieben am: 05.10.2003 21:38:41
Hallo Rainer,

dieser Unterschied war tatsächlich entscheidend. Mit RaBereich an dieser Stelle funzt es nun.

Vielen Dank,
Rüdiger
Bild

Betrifft: Funktioniert doch nicht !!
von: hisEXCELlence
Geschrieben am: 05.10.2003 21:54:19
Hallo, da hab ich wohl ein wenig zu früh geantwortet.

Mit dem veränderten Code mit RaBereich an der Stelle von Range(Target...) tritt nun das Problem auf, dass sich die Farbe der zeile immer verändert, wenn ich auch nur irgendwo in der Zeile irgendetwas eingebe. Nur die Zellen K verändern ihre Farben nicht. Die Farbe die die Zeile annimmt ist dann völlig unabhängig von dem Wert in K (so lange dort nichts steht), es ist immer die Farbe die als letztes durch die case Bedingungen "true" war. So als wäre sie noch gespeichert. Irgendwo ist also noch ein kleiner Haken.

Gruss,
Rüdiger
Bild

Betrifft: AW: bed. formatierung vba-problem
von: Reinhard
Geschrieben am: 05.10.2003 22:08:25
Hi Rüdiger,
tausche
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
gegen
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
und stell dn Code in "Diese Arbeitsmappe"
Gruß
Reinhard
Bild

Betrifft: AW: bed. formatierung vba-problem
von: hisEXCELlence
Geschrieben am: 06.10.2003 17:10:32
Hallo Reinhard,

Danke für die Hilfe.
Doch auch als "Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)" in der Arbeitsmappe treten die gleichen Probleme wie oben genannt. auf.
Hast du oder hat jemand noch eine Idee ?

Gruss Rüdiger
Bild

Betrifft: AW: bed. formatierung vba-problem
von: hisEXCELlence
Geschrieben am: 06.10.2003 17:11:24
Hallo Reinhard,

Danke für die Hilfe.
Doch auch als "Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)" in der Arbeitsmappe treten die gleichen Probleme wie oben genannt. auf.
Hast du oder hat jemand noch eine Idee ?

Gruss Rüdiger
 Bild
Excel-Beispiele zum Thema " bed. formatierung vba-problem"
Automatische Datumformatierung unterdrücken Zahlenformatierung mit Punkt nach der 1. Ziffer
Unterschiedliche Schriftformatierung in Kopf-/Fußzeile Jahreskalender und bedingte Formatierung
Bedingte Formatierung auslesen Über die bedingte Formatierung den Minimalwert markieren
Über bedingte Formatierung Hintergrundfarbe bei Zelleingabe ändern Bedingte Formatierung in Abhängigkeit eines Zellkommentars
Markierung von Formeln über bedingte Formatierung Zelleinträgen über die Formatierung Spaltennamen hinzufügen