Abakumov Пользователь Сообщений: 209 |
#1 13.01.2014 16:32:40 Уважаемые форумчане, пытаюсь прописать код для снятия и восстановления общего доступа к книге программно.Коды нашел
Вот только при их выполнении у меня возникают диалоговые окна касательно того «Данная операция приведет к сохрананию книги» и «Общий доступ не даст возможности просматривать макросы». Можно ли сделать что бы по умолчания я был на все согласен? Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает. |
||
Dima S Пользователь Сообщений: 2063 |
#2 13.01.2014 16:57:43
Не забудьте после выполнения кода их включить обратно. |
||
Abakumov Пользователь Сообщений: 209 |
Dima S, спасибо огромное, помогли. Все работает как надо Когда испробованы все варианты, я начинаю плясать с бубном. Как правило — помогает. |
The_Prist Пользователь Сообщений: 14181 Профессиональная разработка приложений для MS Office |
Не забудьте вернуть параметр обратно. Как запретить сообщения? Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы… |
slesarok Пользователь Сообщений: 65 |
#5 08.04.2022 06:58:10 А тогда подскажите:
И суть проблемы в том, что при выполнении
происходит сохранение файла в директорию по умолчанию (к примеру: C:UserDocuments) а не в тоже место, откуда был изначально открыт файл. Хоть с локального диска открытие файла, хоть с сетевого расположения. Помогите решить вопрос! |
||||
slesarok Пользователь Сообщений: 65 |
#6 08.04.2022 07:07:27 Разобрался)
|
||
slesarok Пользователь Сообщений: 65 |
#7 08.04.2022 09:28:19 Все же макрос работает на совсем корректно. Без профессиональной помощи не разберусь На странице кнопка вызова определенного Меню
В меню только 1 Флаг «Общий доступ у книге»
При манипуляциях с Флагом (включить/выключить), код работает корректно (общий доступ работает, сохраняет в нужную директорию! !Но при условии, если прописано On Error Resume Next ‘Действие при установки/снятии флажка «Включить общий доступ к книге»
Иначе ругается Method ‘ExclusiveAccess’ of Object ‘_Workbook’ failed Конечно все работает с On Error Resume Next, но хочется понимать, можно ли иначе, так сказать по правильному Изменено: slesarok — 08.04.2022 09:31:58 |
||||||
slesarok Пользователь Сообщений: 65 |
#8 08.04.2022 09:34:41 Не могу найти правила загрузки файлов. Не грузятся https://disk.yandex.ru/i/S8GrI_tdp7_r9g Изменено: slesarok — 08.04.2022 09:37:38 |
Добрый день всем
Преамбула:
Конференция в целях интереса писал(а):А вы точно искали ответ, не нашли его и задаете осмысленный и не противоречащий Правилам Конференции (которые Вы конечно же, скрупулезно изучили), вопрос?
Ответ я искал, НЕ нашел, вопрос постараюсь сформулировать максимально осмысленно. С правилами вроде бы конфликтов нет
Собственно сабж: в некоей организации для работы используется здоровенная (10 Мб) книга Excel, буквально пронизанная различными макросами и защитой ячеек/листов/самой книги. Недавно появилась задача — необходимо заставить эту самую книгу работать в режиме общего доступа, что сразу повлекло за собой ряд проблем. Оказалось, что дедушка Ёксель режим общего доступа не очень любит, и при попытке в оном применить команду Workbooks(«ИмяКниги»).Unprotect вываливается с сообщением:
Дедушка Ёксель писал(а):Runtime error 1004. Method «Unprotect» of object «_Worksheet» failed/
.
Пытаясь найти какие-либо свойства/методы, связанные с режимом общего доступа, наткнулся только на два метода: ProtectShared и UnprotectShared. Т.е. функций, которые возвращают режим работы книги (общий или монопольный) то ли нет, то ли я их проморгал (искренне надеюсь на второе).
Ну и вопросы:
1. Есть ли возможность снимать программно защиту с листов в режиме общего доступа к книге?
2. Если ее нет, можно ли определять режим работы книги помимо обработки события «On Error…» в теле макросов синхронизации?
Как обычно — заранее спасибо
С уважением,
Злыдень.
Покой нам только снится!!! И то редко. Поскольку нет в мире совершенства, а есть только стремление к оному.
«Защитить книгу и дать общий доступ» VBA. |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить
|
Узнай цену своей работы
Формулировка задачи:
Доброго времени суток!
Господа такой вопрос. Как программно дать общий доступ к книге Excel?
Заранее благодарен.
Код к задаче: «Как программно дать общий доступ к книге Excel?»
textual
Листинг программы
If ActiveWorkbook.MultiUserEditing Then ActiveWorkbook.ExclusiveAccess End If
Полезно ли:
6 голосов , оценка 3.667 из 5
Похожие ответы
- Как программно нажать на кнопку в браузере черезе VBA
- Как сделать лист другой книги — скрытым
- VBA Excel Как программно запретить вывод автофигуры на печать?
- Как программно включить/отключить NumLock
- Какое свойство задать RowSourse чтобы при открытии формы список сразу был открыт
- Как в VBA задать строку S из 10 символов?
- Какой оператор надо применять при вводе исходных данных?
- Каким методом можно записать строку в документ ворд ?
- Ввод дат только текущего года через userform
- Как вывести сообщение если необходимый файл не найден
- Как узнать название лейбла элемента коллекции по номеру
|
|
|
Популярные разделы FAQ: Общие вопросы
Особенности VBA-кода
Оптимизация VBA-кода
Полезные ссылки
1. Старайтесь при создании темы указывать в заголовке или теле сообщения название офисного приложения и (желательно при работе с Office 95/97/2000) его версию. Это значительно сократит количество промежуточных вопросов.
2. Формулируйте вопросы как можно конкретнее, вспоминая (хотя бы иногда) о правилах ВЕЛИКОГО И МОГУЧЕГО РУССКОГО ЯЗЫКА, и не забывая, что краткость — сестра таланта.
3. Не забывайте использовать теги [сode=vba] …текст программы… [/code] для выделения текста программы подсветкой!
4. Темы с просьбой выполнить какую-либо работу полностью за автора здесь не обсуждаются и переносятся в раздел ПОМОЩЬ СТУДЕНТАМ.
Многопользовательский доступ в Excel и VBA
- Подписаться на тему
- Сообщить другу
- Скачать/распечатать тему
|
|
Member Рейтинг (т): нет |
Не знаю куда еще написать, VBA здесь может и ни при чем:-) Есть файл в excel, в котором есть макросы (в частности в макросах снимается/защищается лист). Когда я через Сервис->Доступ к книге включаю «Разрешить совместный доступ», то вылезает сообщение что-то типа «Нельзя будет изменять и читать макросы». Затем при запуске макроса вылезает ошибка в месте, где я снимаю защиту с листа. Как это обойти, может кто подскажет. P.S. Вообще мне нужно, чтобы был совместный доступ и при этом для некоторых пользователей была защита листа, а для некоторых — нет. |
ГостьПроездом |
|
Full Member Рейтинг (т): 1 |
1. При включенном совместном доступе действительно код макроса недоступен. У меня была такая задача. Книга с совместным доступом, для некоторых людей лист защищается, для некоторых — нет. При открытии книги: Private Sub Workbook_Open() If ActiveSheet.Name = «КА» Then Call ProtectSomeColumnsOnNecessarity End If End Sub Public Sub ProtectSomeColumnsOnNecessarity() PswdToProtect = «M@ke_protect@ble» Dim KA_Sh As Worksheet Set KA_Sh = ActiveSheet ManagerName = Environ(«USERNAME») If ManagerName <> «User1» And ManagerName <> «User2» Then ‘ блокируем столбец «Предоставление документов» — для этого делается следующее: ‘ 1. предварительно в других столбцах при форматировании ячеек на вкладке Protection снимается св-во Locked ‘ 2. лист блокируется, при этом можно выполнять все операции, и лишь столбец блокированных ячеек будет защищен On Error GoTo FinishSubHndl KA_Sh.Protect Password:=PswdToProtect, _ AllowFormattingCells:=True, _ AllowFormattingColumns:=True, _ AllowFormattingRows:=True, _ AllowInsertingColumns:=True, _ AllowInsertingRows:=True, _ AllowInsertingHyperlinks:=True, _ AllowDeletingRows:=True, _ AllowSorting:=True, _ AllowFiltering:=True, _ AllowUsingPivotTables:=True Else ‘ Для User1 и User2 ограничений на ввод информации нет KA_Sh.Unprotect Password:=PswdToProtect End If FinishSubHndl: Exit Sub End Sub У меня Excel2003, и код работает. Удачи |
PiJon |
|
Member Рейтинг (т): нет |
Спасибо, попробую. |
0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
0 пользователей:
- Предыдущая тема
- VB for Application
- Следующая тема
[ Script execution time: 0,1807 ] [ 16 queries used ] [ Generated: 14.04.23, 00:17 GMT ]