Убедитесь, что файл Excel не может быть сохранен, если в столбце есть пустые ячейки

0

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

developer10
источник

Ответы:

0

Для этого требуется макрос VBA.

Пример: сделать ячейку B3 обязательной для заполнения в книге перед сохранением.

  1. Откройте рабочий лист в Excel.

  2. Нажмите Alt+, F11чтобы открыть VBA для Excel.

  3. Дважды щелкните ThisWorkbookв левой панели.

  4. На верхней правой панели выберите первую стрелку выпадающего списка и выберите Workbook

  5. Выберите вторую стрелку выпадающего списка и выберите BeforeSave

  6. Введите следующий код:

    If Cells(3, 2).Value = "" Then
    MsgBox "Cell B3 requires user input"
    Cancel = True
    End If
  7. Сохранить макрос с помощью Ctrl+ S.

  8. Чтобы вернуться в Excel, нажмите ALT+ Q.

  9. Сохраните рабочую книгу (для Excel 2007 и выше сохранить как .xlsm), и вам будет предложено заполнить B3 перед сохранением.

образ

harrymc
источник
Для тестирования диапазона столбцов используйте этот тест:If WorksheetFunction.CountA(Range("A38:P38")) = 0 Then
harrymc
Спасибо, я уже нашел этот ответ в другом месте. Моя, но реальная проблема заключается в том, чтобы включить проверку каждой ячейки в определенном столбце, а не только одной ячейки. Например, допустим, у меня есть лист с 7 столбцами, из которых первые три являются обязательными. Я хотел бы иметь ячейки в t
developer10
Кажется слишком простым, так как это требует только изменения условия IF.
Harrymc