Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как предотвратить сохранение, если определенная ячейка пуста в Excel?

Author Kelly Last modified

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


arrow blue right bubbleПредотвращение сохранения, если определенная ячейка пуста в Excel

Чтобы предотвратить сохранение текущей рабочей книги, если определенная ячейка пуста в Excel, вы можете легко применить следующий макрос VBA.

Шаг 1: Откройте окно Microsoft Visual Basic for Applications, нажав клавиши Alt + F11 одновременно.

Шаг 2: В Обозревателе проектов разверните VBAProject (Имя вашей книги.xlsm) и Microsoft Excel Objects, затем дважды щелкните ThisWorkbook. См. скриншот:

A screenshot of the ThisWorkbook window in the VBA editor

Шаг 3: В открывшемся окне ThisWorkbook вставьте следующий макрос VBA:

Макрос VBA: Предотвращение сохранения, если определенная ячейка пуста

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Update by ExtendOffice 20220907
Dim xFileName As String
Dim xStr As String
Dim xStrWSH As String
Dim xWSh As Worksheet
Dim xWShs As Sheets
Dim xWSh1 As Worksheet
Dim xWB As Workbook

xStrWSH = "xHidWSH_LJY"
On Error Resume Next
Set xWB = Application.ActiveWorkbook
Set xWShs = xWB.Worksheets
Set xWSh = xWShs.Item(xStrWSH)

If xWSh Is Nothing Then

  Set xWSh1 = xWShs.Add
  xWSh1.Name = xStrWSH
  xWSh1.Visible = xlSheetVeryHidden
  Cancel = False

Else

  If Trim(Application.Sheets("Sheet1").Range("A1").Value) = "" Then
  Cancel = True
  MsgBox "Save cancelled"
  End If

End If

End Sub
Примечание:
1. В 26-й строке приведенного выше кода VBA "Sheet1" — это имя конкретного листа, а "A1" — это конкретная ячейка, и вы можете изменить их по своему усмотрению.
2. После того, как вы введете VBA в ThisWorkbook, вам следует сначала сохранить книгу. Затем вы сможете отправить файл с поддержкой макросов другим пользователям.

Теперь, если определенная ячейка пуста в текущей рабочей книге, при попытке сохранения появится диалоговое окно с предупреждением, которое сообщит вам «Сохранение отменено». См. следующий скриншот:

A screenshot of a warning dialog in Excel saying 'Save cancelled' when attempting to save with a blank cell


arrow blue right bubbleСвязанные статьи

Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
  • Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!

Все надстройки Kutools. Один установщик

Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.

Excel Word Outlook Tabs PowerPoint
  • Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
  • Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
  • Совместная работа — максимальная эффективность между приложениями Office
  • 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек