Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Происходит перед сохранением книги.
Синтаксис
expression. BeforeSave (SaveAsUI, Cancel)
выражение Переменная, представляющая объект Workbook .
Параметры
| Имя | Обязательный или необязательный | Тип данных | Описание |
|---|---|---|---|
| SaveAsUI | Обязательный | Boolean | Значение true , если диалоговое окно Сохранить как отображается из-за внесенных изменений, которые необходимо сохранить в книге. |
| Отмена | Обязательный | Boolean | Значение false при возникновении события. Если процедура события задает для этого аргумента значение True, книга не сохраняется после завершения процедуры. |
Возвращаемое значение
Nothing
Пример
В этом примере пользователю предлагается ответ "да" или "нет" перед сохранением книги.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel as Boolean)
a = MsgBox("Do you really want to save the workbook?", vbYesNo)
If a = vbNo Then Cancel = True
End Sub
В этом примере событие BeforeSave используется, чтобы убедиться, что определенные ячейки содержат данные перед сохранением книги. Книгу нельзя сохранить, пока не будут содержаться данные в каждой из следующих ячеек: D5, D7, D9, D11, D13 и D15.
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'If the six specified cells don't contain data, then display a message box with an error
'and cancel the attempt to save.
If WorksheetFunction.CountA(Worksheets("Sheet1").Range("D5,D7,D9,D11,D13,D15")) < 6 Then
MsgBox "Workbook will not be saved unless" & vbCrLf & _
"All required fields have been filled in!"
Cancel = True
End If
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.