' Der Code wird direkt hinter das entspr. Tabellenblatt geschrieben
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim Bereich As Range
Dim Z As Range
Set Bereich = Range("B3:C20")
' Überprüfen ob mehr als eine Zelle markiert $A$1:$B$3 ist.
' Wenn mehrere Zellen markiert wurden, dass ist der Wert > 0
If InStr(Target.Address, ":") = 0 Then
' Abbruch, wenn Aktion nicht im Zielbereich
If Intersect(Target, Bereich) Is Nothing Then Exit Sub
Application.EnableEvents = False
Target.Value = UCase(Target)
Application.EnableEvents = True
Else
' wenn mehrere Zellen markiert wurden
Application.EnableEvents = False
For Each Z In Selection
' Überprüfen ob die Zelle im vorgegebenen Bereich liegt
If Intersect(Z, Bereich) Is Nothing Then
Else: Z.Value = UCase(Z)
End If
Next Z
Application.EnableEvents = True
End If
End Sub
|