Правильно, поэтому я ударил немного стены здесь. У меня есть этот прекрасный кусок кода, который действительно хорошо работает для защиты файлов.
Private Sub Workbook_Open()
Dim wsh As Worksheet
Dim rng As Range
On Error Resume Next
For Each wsh In Me.Worksheets
wsh.Unprotect Password:="x"
wsh.Cells.Locked = False
Set rng = wsh.UsedRange.SpecialCells(xlCellTypeConstants)
If Not rng Is Nothing Then
rng.Locked = True
End If
Set rng = wsh.UsedRange.SpecialCells(xlCellTypeFormulas)
If Not rng Is Nothing Then
rng.Locked = True
End If
wsh.Protect Password:="x"
Next wsh
End Sub
Но я хочу добавить его в новые файлы. Каждую неделю генерируется несколько новых файлов, но они также должны быть защищены. И это трудно сделать вручную.
Я пытался сохранить макрос в моем личном макросе. Но это не работает. Даже если я сделаю его обычным макросом вместо «при открытии».
Что будет работать, я думаю, что всякий раз, когда я открываю вновь созданную книгу, запускается макрос, который копирует код безопасности в новую книгу. Но я не знаю, как это сделать, поскольку имя также меняется каждый раз.
Итак ... идеи?