Chciałbym wyświetlić ostrzeżenie, ze arkusz nie jest chroniony, jeśli podczas pracy na niechronionym arkuszu użytkownik aktywuje komórkę zablokowaną. Próbowałem stworzyć makro, ale jakkolwiek działa dla pojedynczej komórki to do zakresu komórek już nie.
To makro działa
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.EnableEvents = False
If ActiveCell.Row = 45 And ActiveCell.Column = 2 Then
If MsgBox("Uwaga! Arkusz odblokowany." & vbCrLf & "Nie możesz pracować na odblokowanym arkuszu." & vbCrLf & "Zablokować Arkusz?", vbYesNo, "Odblokowany Arkusz!") = vbYes Then
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
' Else
End If
End If
Application.EnableEvents = True
End Sub
A to nie chce
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Private Sub Worksheet_Change2()
Application.EnableEvents = False
If ActiveCell.Range(Cells(1, 1), Cells(45, 60)) Then
If MsgBox("Uwaga! Arkusz odblokowany." & vbCrLf & "Nie możesz pracować na odblokowanym arkuszu." & vbCrLf & "Zablokować Arkusz?", vbYesNo, "Odblokowany Arkusz!") = vbYes Then
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
' Else
End If
End If
Application.EnableEvents = True
End Sub
Co może być nie tak? |