Как предотвратить сохранение, если конкретная ячейка в Excel пуста?
Например, вы создали форму на листе и поделились ею с коллегами. Вы надеетесь, что ваши коллеги внесут свои имена в конкретную ячейку, чтобы указать, кто вводил эту форму, иначе они не смогут сохранить форму, как вы могли бы это сделать? Здесь я представлю макрос VBA, чтобы предотвратить сохранение книги, если конкретная ячейка в Excel пуста.
Запретить сохранение, если определенная ячейка в Excel пуста
Чтобы предотвратить сохранение текущей книги, если конкретная ячейка в Excel пуста, вы можете легко применить следующий макрос VBA.
Шаг 1. Откройте окно Microsoft Visual Basic для приложений, нажав кнопку другой + F11 ключи тем временем.
Шаг 2. В обозревателе проектов разверните VBAProject (имя вашей книги.xlsm) и Объекты Microsoft Excel, а затем дважды щелкните значок Эта рабочая тетрадь. См. Снимок экрана слева:
Шаг 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 "Лист1" - это конкретное имя рабочего листа, а "A1"- это конкретная ячейка, и вы можете изменить их по своему усмотрению.
2. После входа в VBA в Эта рабочая тетрадь, вы должны сначала сохранить книгу. И затем вы можете отправить файл с поддержкой макросов другим.
Теперь, если конкретная ячейка в текущей книге пуста, при ее сохранении появляется диалоговое окно с предупреждением, в котором сообщается: "Сохранение отменено". См. Следующий снимок экрана:
Статьи по теме
Как проверить или найти, содержит ли ячейка определенную строку / текст / слово в Excel?
Как скопировать строки, если столбец содержит определенный текст / значение в Excel?
Как скопировать ячейки, если столбец содержит определенное значение / текст в Excel?
Лучшие инструменты для офисной работы
Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!