Я пытаюсь разблокировать несколько Excel Workbooks
из файла.Я знаю пароль, и он одинаков для всех файлов.
Я запускаю следующий код.Это работает в том смысле, что я не получаю сообщение об ошибке и что все нужные рабочие книги открываются, а затем закрываются.Однако, когда я пытаюсь открыть файлы вручную после выполнения кода, меня все равно просят ввести пароль.
Мой ActiveWorkbook.Unprotect
не работает сам по себе, и я действительно не понимаю почему, потому что я не видел другой синтаксис в Интернете.
Это мой код:
Sub Hell3()
Dim WB As Workbook
Dim xFd As FileDialog
Dim xFdItem As Variant
Dim xFileName As String
Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
If xFd.Show = -1 Then
xFdItem = xFd.SelectedItems(1) & Application.PathSeparator
xFileName = Dir(xFdItem & "*.xls*")
Do While xFileName <> ""
Workbooks.Open (xFdItem & xFileName), Password:="pass"
ActiveWorkbook.Unprotect Password:="pass"
xFileName = Dir
Loop
End If
Dim macrowb As String
macrowb = "Book1.xlsm"
For Each WB In Application.Workbooks
If WB.Name <> macrowb Then
WB.Close SaveChanges:=True
End If
Next WB
End Sub