Несмотря на то, что вы предоставили ответ на свой вопрос, вы все равно можете его «принять» - это позволит другим узнать, что вы больше не нуждаетесь в активной помощи. Однако это не закрывает вопрос и все же позволяет другим публиковать ответы для удобства чтения в будущем.
ел бы написать функцию, которая не будет защищать и повторно защищать мой рабочий лист при запуске. В настоящее время у меня есть следующая функция:
Public Function RunProtect(fun As Function, sheet As Worksheet)
Dim protected As Boolean: protected = False
If sheet.ProtectContents = True Then
protected = True
sheet.Unprotect
End If
'Code to run fun
If protected = True Then
sheet.protect
End If
End Function
Это возможно или есть более простой способ сделать это? Я должен отменить защиту своих листов при попытке редактировать свои таблицы в VBA.