Включение/выключение ячейки в Excel в зависимости от того, в какую ячейку пользователь вводит значение первой

Включение/выключение ячейки в Excel в зависимости от того, в какую ячейку пользователь вводит значение первой

У меня есть три поля в ячейках A1, A2 и A3 в Excel. Все три поля разблокированы в первом случае.

  • Если пользователь сначала вводит значение в A3, A1 и A2 должны быть отключены или заблокированы.

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

Другими словами, пользователь должен заполнить A1 и A2, но не A3, или пользователь должен заполнить A3, но не A1 и A2. Можно ли этого добиться в Excel, используя IF и else?

решение1

Следуй этим шагам:

Метод 1:

  • Выберите Ячейки A1:A2, или те, которые вы разрешаете редактировать только вам.
  • Щелкните правой кнопкой мышизатем в всплывающем меню нажмитеФормат ячеек.
  • ОтДиалоговое окно «Формат ячеек», ударятьВкладка «Защита»

введите описание изображения здесь

  • Снимите флажок «Заблокировано»., & завершить сХорошо.
  • НажмитеВкладка «Обзор»затемЗащитный лист.
  • Введите код доступа вДиалоговое окно «Защитить лист»и ударилХорошо.

введите описание изображения здесь

Примечание.Для A3, во-первыхСнять защитуЛист и повторите указанные выше шаги.


Метод 2:

Sub LockCells()

Dim mainworkBook As Workbook

Set mainworkBook = ActiveWorkbook

mainworkBook.Sheets("Sheet1").Range("A1:A2").Value = "Lock"
   mainworkBook.Sheets("Sheet1").Range("A1:A2").Locked = True
   mainworkBook.Sheets("Sheet1").Range("A3").Locked = False
   ActiveSheet.Protect

End Sub

Sub Unlockcells()

  Dim mainworkBook As Workbook

  Set mainworkBook = ActiveWorkbook

  mainworkBook.Sheets("Sheet11").Range("A3").Value = "Free"
    mainworkBook.Sheets("Sheet11").Range("A1:A2").Locked = False
    mainworkBook.Sheets("Sheet11").Range("A3").Locked = True
    ActiveSheet.Protect

End Sub

Примечание.

  • НажиматьАльт+Ф11чтобы открыть редактор VB, затемКопировать вставитьэти коды как стандартный модуль.
  • Снять защитуЛист перед запуском любого из макросов.

Теперь изменения разрешены только для разблокированных ячеек.

Связанный контент