У меня есть эта книга, которая находится на сетевом диске.Я хочу, чтобы только 5 человек могли редактировать файл через форму пользователя / или напрямую, а остальные могут видеть только.
Некоторые предыстории:
Мой файл является общим в сетевом файле, где по крайней мере 15 пользователей одновременно вводят данные через форму пользователя и когда один человек сохраняет файл, рабочая книга объединяется.
Теперь я хочу
только 3 пользователя будут вводить данные через форму пользователя, а остальные все смогут видеть листы, но не редактировать.
или рабочий лист будет виден всем, кроме редактируемого через пользовательскую форму
Проблема в том, что когда я делюсь рабочей книгой, опция / объект защиты становится недоступной, поэтомувопрос о том, чтобы сделать его защищенным-незащищенным, здесь не актуален.
Это то, что я пробовал в sub Workbook_Open()
Private Sub Workbook_Open()
Protect_sheet
End Sub
Sub Protect_sheet()
Dim WS As Worksheet
Dim PWS As String
PWS = "12345"
For Each WS In Worksheets
WS.Protect Password:=PWS, USERINTERFACEONLY:=True
Next WS
End Sub
Это работает, только если книга не является общей.
У меня есть кнопка макроса для отображения формы, Я попробовал:
Разблокировать лист перед загрузкой пользовательской формы и изменить данные, снова заблокировать лист, показывая ошибку (ячейка заблокирована).
Последний выбор, который у меня остался, - сохранить данные в одной рабочей книге wb_master
и скопировать их содержимое в другую рабочую книгу wb_slave
.Главный будет заполнен назначенными 3 пользователями, все пользователи будут использовать подчиненный.Здесь, как я могу добиться этого обновления / перезагрузки в режиме реального времени от главного к подчиненному?
Есть ли способ обойти это?