hi kath.hundefriseursalon,
hab den Makro so angepasst, daß Spalte J, Zeile 4-34 überwacht wird.
Ist der Zellwert der geänderten Zelle
1 -> Zellhintergrund hellgelb setzen
2 -> Zellhintergrund hellrot setzen
3 -> Zellhintergrund hellblau setzen
4 -> Zellhintergrund hellgruen setzen
sonst -> Zellhintergrund farblos setzen
Code:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
->die Konstanten schränken den überwachten Bereich ein:
->Spalte J, Zeile 4-34 - kann entsprechend abgeändert werden
Const c_Spalte = 10->entspricht Spalte J
Const c_Zeile_anf = 4
Const c_Zeile_end = 34
Dim z As Range
For Each z In Target
With z
If .Column = c_Spalte Then
If (c_Zeile_anf <= .Row) And (.Row <= c_Zeile_end) Then
->Zelle liegt im überwachten Bereich
->auf Wert prüfen und Zellhintergrund entspr. setzen
If 1 = .Value Then
.Interior.ColorIndex = 36->hellgelb 6->gelb
ElseIf 2 = .Value Then
.Interior.ColorIndex = 38->hellrot 3->rot
ElseIf 3 = .Value Then
.Interior.ColorIndex = 37->hellblau 5->blau
ElseIf 4 = .Value Then
.Interior.ColorIndex = 35->hellgrün 4->grün
Else ->sonst
.Interior.ColorIndex = xlColorIndexNone
End If
End If
End If
End With
Next
End Sub
Um den Makro auf deiner Tabelle wirksam werden zu lassen, muß du ihn in das Code-Fenster der Tabelle schreiben.
Das geht folgendermassen:
a) zunächst die Mappe mit der entsprechenden Tabelle in Excel öffnen
b) mit Alt+F11 den VB-Editor öffnen
c) im Projektfenster mit Doppelklick auf die Tabelle das Codefenster der Tabelle öffnen
d) das Makro per copy&paste in das Codefenster kopieren.
Dazu alles innerhalb des grauen Rahmens (hier im Thread) selektieren -> rechte Maustaste -> Kopieren
Den Cursor in das Code-Fenster der Tabellen (siehe c))setzen -> rechte Maustaste -> Einfügen
e) ggf. die Konstanten c_Spalte, c_Zeile_anf, c_Zeile_end anpassen
f) mit Strg+S speichern
g) mit Alt+Q VB-Editor schliessen
h) auf dem Tabellenblatt die Funktion des Makros prüfen
Gruß Matjes