Private Sub Worksheet_Change(ByVal Target As Range)
' erster Buchstabe in Zelle Groß rest Klein
Dim RaBereich As Range, RaZelle As Range
Application.EnableEvents = False
' Bereich der Wirksamkeit
Set RaBereich = Range("K6:Q66")
' ActiveSheet.Unprotect
Application.EnableEvents = False
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
If RaZelle <> "" Then
RaZelle.Value = UCase(Mid(RaZelle.Value, 1, 1)) _
& LCase(Mid(RaZelle.Value, 2, Len(RaZelle.Value) - 1))
End If
End If
Next RaZelle
Application.EnableEvents = True
' ActiveSheet.protect
Set RaBereich = Nothing
End Sub
Zum Einfärben funktioniert dieses Makro:
Private Sub Worksheet_Change(ByVal Target As Range)
' HINTERGRUND
' für Schrift RaZelle.Font.ColorIndex
Dim RaBereich As Range, RaZelle As Range
' Bereich der Wirksamkeit
Set RaBereich = Range("B3:C20, D1:D7")
' noch mehr Bereiche
' Set RaBereich = Union(Range("C7:I26"), Range("L7:R26"), Range("U7:AA26"), Range("AD7:AJ26"))
' ab Vesion XP braucht der Schutz nicht aufgehoben werden
' Formatierung bei Schutz kann über Dialog Schutz eingestellt werden
' ActiveSheet.Unprotect ("Passwort")
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, RaBereich) Is Nothing Then
With RaZelle
Select Case UCase(.Value) ' UMWANDLUNG DER Eingabe in Großbuchstaben
Case "1"
.Interior.ColorIndex = 1
' schwarz
.Font.ColorIndex = 2
' Schriftfarbe weiß
'.NumberFormat = "General"
' Zellenformat Standard
Case "2"
.Interior.ColorIndex = 6
' weiß
.Font.ColorIndex = 0
' Schriftfarbe automatisch
'.NumberFormat = "General"
' Zellenformat Standard
Case "3"
.Interior.ColorIndex = 3
' rot
.Font.ColorIndex = 2
' Schriftfarbe Weiß
'.NumberFormat = ";;;"
' nicht sichtbar
Case "4"
.Interior.ColorIndex = 4
' grün
.Font.ColorIndex = 0
' Schriftfarbe automatisch
'.NumberFormat = "General"
' Zellenformat Standard
Case "KLAUS"
.Interior.ColorIndex = 5
' blau
.Font.ColorIndex = 0
' Schriftfarbe automatisch
'.NumberFormat = "General"
' Zellenformat Standard
Case Else
.Interior.ColorIndex = xlNone
' Keine
.Font.ColorIndex = 0
' Schriftfarbe automatisch
'.NumberFormat = "General"
' Zellenformat Standard
End Select
End With
End If
Next RaZelle
' ActiveSheet.protect ("Passwort")
Set RaBereich = Nothing
End Sub
Frage:
Wie kann ich die beiden Makros auf ein Worksheet kombiniert anwenden?
Danke für Eure Hilfe!
Sunny