Доброго дня всем! стоит задача - отображать полный путь открытого документа в заголовке Экселя (v. 2016). В personals => ЭтаКнига создал макрос:
Код
Private Sub Workbook_Open()
ActiveWindow.Caption = ActiveWorkbook.FullName
End Sub
Но при любом запуске нового документа, выскакивает ошибка Run-time 91, и подсвечивается ActiveWindow.Caption = ActiveWorkbook.FullName, при этом если нажать F8, то макрос отрабатывает нормально, меняет заголовок, и всё ок. Подскажите, что где надо подкрутить, что бы все было на автомате.
что-то начинает проясняться )) Выполняю тестовый пример:
Код
Option Explicit
Private WithEvents App As Application
'Назначаем значение переменной App
Private Sub Workbook_Open()
Set App = Application
End Sub
'Отслеживаем открытие книги
Private Sub App_WorkbookOpen(ByVal Wb As Workbook)
MsgBox "Вы открыли книгу:" & Wb.Name 'команда работает без проблем
ActiveWindow.Caption = Wb.FullName 'ловлю ту же ошибку 91.
End Sub
Полагаю, что проблема где-то в ActiveWindow.Caption? Апострофф, БМВ - ваши идеи попробовал, не помогло (
konstruktiv54 написал: В personals => ЭтаКнига создал макрос
Проблема в этом. Подозреваю, что ошибка в #1 возникает, когда Вы открываете документ из Проводника (или подобным образом) при не открытом Excel. Первой открывается книга Personal.xlsb, при этом обращение к объекту ActiveWindow вызывает ошибку, так как указанная книга является скрытой.
В #5 та же самая ошибка, причем Msgbox указывает на личную книгу макросов. Самое простое исправление - поставьте в #5 перед проблемной строкой 10