AwesomSTUFF
Rear Admiral
- Registriert
- Juli 2011
- Beiträge
- 5.418
Moin,
also ich bearbeite grad ne Datei der Personalabteilung. Ist ein Personalplan.
Dort sollen verschiedene Eingaben in einer Zelle (zB U für Urlaub, K für Krank usw) bewirken, dass die Farbe der Zelle geändert wird. Soweit , so klar. Geht ja auch mit bedingter Formatierung. Allerdings hat ja Excel 2003 nur 3 Bedingungen. Ich hab nun im Netz etwas gefunden um das per VBA zu lösen. Das scheint auch zu gehen aber ich bekomme ab und ab ein "Laufzeitfehler 13 - Typen Unverträglich" gemeldet immer beim ersten "Case" - egal was dahinter steht.
Das passiert immer, zB einen Wert mit dem "Anfasser" kopiere. Ich weiss inzwischen, dass es damit zu tun hat, dass die Funktion sich auf einen Zelle und nicht auf eine markierte Range bezieht.
Hier mal der VBA Code:
Bitte helft mir.
MfG Dave
also ich bearbeite grad ne Datei der Personalabteilung. Ist ein Personalplan.
Dort sollen verschiedene Eingaben in einer Zelle (zB U für Urlaub, K für Krank usw) bewirken, dass die Farbe der Zelle geändert wird. Soweit , so klar. Geht ja auch mit bedingter Formatierung. Allerdings hat ja Excel 2003 nur 3 Bedingungen. Ich hab nun im Netz etwas gefunden um das per VBA zu lösen. Das scheint auch zu gehen aber ich bekomme ab und ab ein "Laufzeitfehler 13 - Typen Unverträglich" gemeldet immer beim ersten "Case" - egal was dahinter steht.
Das passiert immer, zB einen Wert mit dem "Anfasser" kopiere. Ich weiss inzwischen, dass es damit zu tun hat, dass die Funktion sich auf einen Zelle und nicht auf eine markierte Range bezieht.
Hier mal der VBA Code:
Code:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngZelle As Range, strText As String
Select Case Target.Value
Case "UP"
Target.Interior.ColorIndex = 4
Case "U"
Target.Interior.ColorIndex = 8
Case "K"
Target.Interior.ColorIndex = 3
Case "KT"
Target.Interior.ColorIndex = 18
Case "L"
Target.Font.ColorIndex = 3
Case "F"
Target.Interior.ColorIndex = 19
Case "S"
Target.Interior.ColorIndex = 35
Case "N"
Target.Interior.ColorIndex = 41
Case "T"
Target.Interior.ColorIndex = 24
Case "Te"
Target.Interior.ColorIndex = 40
Case "Fr"
Target.Interior.ColorIndex = 22
Case ""
Target.Interior.ColorIndex = 0
End Select
End Sub
Bitte helft mir.
MfG Dave
Zuletzt bearbeitet: