Excel Vba Workbook_open перестает работать - PullRequest
2 голосов
/ 06 октября 2011

У меня есть файл с макросом VBA, который запускается при открытии рабочей книги пользователем. Один из пользователей добавил пароль логина защиты в этот файл, и теперь Workbook_open () больше не реагирует.

Это

Есть идеи?

Ответы [ 2 ]

2 голосов
/ 07 октября 2011

Просмотр полного кода согласно комментарию Реафиди поможет

Похоже, что пользователь все еще выполняет код, если он пытался его изменить. Но возможно, что этот пользователь (или другие пользователи в будущем) решит отключить макросы, или корпоративная политика может автоматически отключить макросы

Если это пользовательский выбор, тогда стандартная техника - скрыть все рабочие листы, кроме заставки, информирующей пользователя о том, что ему нужно включить макросы. Если они включили макросы, то все листы VeryHidde n (не могут быть отображены стандартным меню) становятся видимыми, а заставка скрывается при открытии книги

Вы могли бы объединить код заставки Брэда с вашим существующим Open кодом

0 голосов
/ 07 октября 2011

Существует несколько параметров, перечисленных на этом веб-сайте

Попробуйте использовать дополнительный параметр пароля, например:

Sub OpenBookTest()
Dim myFile As String
Dim myPath As String
myPath = "C:\My Documents"
myFile = "My Workbook.xls"
Workbooks.Open myPath & "\" & myFile, password:="password"
End Sub

Или записать по-другому:

Workbooks.Open "Full Path Name", Password: ="XYZ"

После просмотра MSDN, я предполагаю, что ваша Workbook_Open - это пользовательская подпрограмма, которую вы написали (или скопировали откуда-то онлайн).Если это так, то вам нужно будет отредактировать его, чтобы добавить дополнительный параметр пароля.Вы должны отредактировать свой вопрос и опубликовать свою подпрограмму Workbook_Open.Таким образом, мы будем знать, как вам помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...