Файл Excel должен быть закрыт для открытия в любых других форматах - PullRequest
2 голосов
/ 03 января 2009

Я хотел бы знать, что у меня есть файл Excel с 18 листами, и он должен быть открыт для любых других версий.

например, если я щелкну правой кнопкой мыши по файлу и выберу открыть с открытым офисом, то же самое открывается. Я хотел бы заблокировать это.

Ответы [ 2 ]

1 голос
/ 04 января 2009

Это не совсем правильно. Вы можете создать макрос, связанный с событием Workbook_Open, который проверяет, какая версия Excel используется (т.е. Application.Version). Например, вы можете попробовать сделать что-то вроде следующего:

Private Sub Workbook_Open()
    If Int(Application.Version) <> 11 Then 
       Workbook.Saved = True
       Workbook.Close
    End If
End Sub

Однако это не будет работать, если у пользователей отключены макросы, и я не знаю, будет ли это работать и в OpenOffice. Я знаю, что OpenOffice имеет VBA-эквивалент, но не знаю достаточно об объектных моделях, чтобы сказать, будет ли макрос Excel вести себя точно так же в OpenOffice.

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

1 голос
/ 03 января 2009

невозможно. Пользователь или ОС решает, какие программы вызывать.

Лучшее, что вы можете сделать - это скрыть данные от чтения, кроме как с помощью правильной программы.

...