ich habe eine Datei mit 23 Blättern.
In dieser Datei habe ich verschiedene Makros eingebaut.
Die ersten beiden - Blattschutz ein bzw. aus - laufen wunderbar für die ersten 13 Blätter, welche auch tatsächlich geschützt werden sollen.
Aber ich habe auch ein Makro, welches nur in den Blättern 4 bis 13 laufen soll, welches eingegebene Dezimalzahlen in Uhrzeiten wandelt. Leider läuft dieses aber auch in den Blätter 14 bis 23. Wie muss ich den unten angefügten Code umschreiben?
Sub Workbook_Open()
Dim i As Long
For i = 1 To 13
Sheets(i).Protect userinterfaceonly:=True, Password:="XY"
Sheets(i).EnableOutlining = True 'für Gliederung
Sheets(i).EnableAutoFilter = True 'für Autofilter
Next i
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim RaBereich As Range, RaZelle As Range
Dim InS As Integer
Dim InM As Integer
If Sh.Index > 1 And Sh.Index "" Then
If IsNumeric(.Value) And InStr(.Value, ":") = 0 Then
.NumberFormat = "[hh]:mm"
If InStr(RaZelle, ",") > 0 Then
InS = Left(RaZelle, InStr(RaZelle, ",") - 1)
InM = Left(Mid(RaZelle & "0", InStr(RaZelle, ",") + 1), 2)
Else
InS = RaZelle
End If
.Value = InS & ":" & InM
End If
End If
End With
Next RaZelle
End If
ERRORHANDLER:
ActiveSheet.Protect "XY"
Application.EnableEvents = True
Set RaBereich = Nothing
End Sub
Vielen Dank für Eure Hilfe!