Я пытаюсь создать защищенную паролем рабочую книгу (назовите ее рабочей книгой базы данных), которая редактируется только с помощью макросов из других рабочих книг.Проблема в том, что два пользователя нажимают кнопку, которая редактирует документ одновременно.
У меня есть макрос, который отлично работает, если книга базы данных не защищена паролем.Макрос открывает базу данных, а затем проверяет, открыт ли он только для чтения.Если база данных открывается как только для чтения, макрос ожидает, а затем пытается снова открыть базу данных.но если книга базы данных не защищена паролем, кто-то скажет, что пользователь 1 может открыть ее вручную, а затем, когда пользователь 2 нажимает кнопку и запускает макрос, он застревает в цикле, ожидая выхода пользователя 1.
sub Run()
OpenFile:
Set Database = Workbooks.Open(FileName:="Data Base Workbook File Name", password:="password")
'Check to see if file is already open
If Database.ReadOnly Then
Database.Close
Application.Wait (Now + TimeValue("0:00:01"))
GoTo OpenFile
End If
Set Data = Database.sheets("Data")
'Do stuff
End Sub
, если я попробую этот макрос, когда документ защищен паролем, и два пользователя запускают его одновременно, один пользователь правильно открывает файл, а другому предлагается ввести пароль.очень странно, что ошибки нет, просто открывает книгу базы данных без ввода пароля для одного из пользователей.