Просьба помочь .Пробую сама написать. Макрос по кнопке, необходимо блокировать строки(нельзя внести изменения), где "дата акта" за предыдущие месяцы. То есть текущий декабрь, все что до (например 30 ноября) заблокируется и надо еще чтобы пользователи могли по паролю снимать блокировку и вносить изменения даты, как это сделать правильно, помогите плиз. Мой вариант не рабочий, может подскажите, что изменить.
Код |
---|
Sub Макрос1()
Dim d As Date
Dim a As Variant
Dim i As Integer
d = Format(Now, "DD.MM.YYYY")
a = Range("C1:C12")
On Error Resume Next
For i = 2 To 10
If DateDiff("d", Sheets("Лист1").Range("C" & i).Value, Date) > 30 Then
ActiveSheet.Unprotect
Sheets("Лист1").Range("d" & i).Locked = True
Sheets("Лист1").Range("e" & i).Locked = True
Sheets("Лист1").Range("f" & i).Locked = True
MsgBox "Нельзя менять прошлые периоды"
Else
Sheets("Лист1").Range("d" & i).Locked = False
Sheets("Лист1").Range("e" & i).Locked = False
Sheets("Лист1").Range("f" & i).Locked = False
End If
i = i + 1
Next
ActiveSheet.Protect
End Sub
|