Есть ли способ разрешить пользователям щелкать, но не редактировать содержимое ячейки? Я знаю, что я могу повозиться в настройках «Обзор-> Защита листа» с помощью опции "Выбрать заблокированные ячейки". Но вот в чем проблема: я хочу запретить пользователю нажимать на все остальные заблокированные ячейки, но не на ячейки с датами. Причина в том, что я хочу, чтобы пользователь мог щелкнуть ячейку с датой и открыть всплывающее диалоговое окно, в котором он мог бы выбрать дату из календаря, но не редактировать ячейку напрямую. Итак, в заключение, я хочу три типа клеток:

  1. редактируемые, кликабельные ячейки
  2. не редактируемые, кликабельные ячейки
  3. не редактируемые, не кликабельные ячейки

Есть ли какая-то середина, которую я могу использовать, чтобы установить несколько ячеек как вариант № 2? Я пробовал различные трюки с применением.Отмена в листовых событиях (которые могут сделать этот вопрос более подходящим для Stackoverflow, поскольку в нем задействован VBA), но пока мне не повезло.

1 ответ1

1

Если вы заблокируете ячейку, вы также не сможете использовать средство выбора даты.

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

Учитывая, что SuperUser не является услугой «Пожалуйста, напишите мне сценарий», это мой ответ. Если вы начинаете работать над макросом VBA и у вас есть вопросы, опубликуйте код как новый вопрос, и мы поможем вам определить, где что-то пошло не так.

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

Если VBA действительно не подходит, подумайте о следующем: разблокируйте все ячейки даты и защитите рабочий лист. Пользователи могут свободно щелкать и редактировать эти ячейки, но не остальные. Используя проверку данных, вы можете убедиться, что они вводят только дату.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .