Evento Workbook.BeforeSave (Excel)
Ocorre antes de a pasta de trabalho ser salva.
Sintaxe
expressão. BeforeSave (SaveAsUI, Cancel)
Expressão Uma variável que representa um objeto Workbook .
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
SaveAsUI | Obrigatório | Boolean | True se a caixa de diálogo Salvar Como for exibida devido a alterações feitas que precisam ser salvas na pasta de trabalho. |
Cancel | Obrigatório | Boolean | False quando o evento ocorre. Se o procedimento de evento definir esse argumento como True, a pasta de trabalho não será salva quando o procedimento for concluído. |
Valor de retorno
Nothing
Exemplo
Este exemplo solicita do usuário uma resposta Sim ou Não antes do salvamento da pasta de trabalho.
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
Este exemplo usa o evento BeforeSave para verificar se determinadas células contêm dados antes que a pasta de trabalho possa ser salva. A pasta de trabalho não poderá ser salva até haver dados em cada uma destas células: D5, D7, D9, D11, D13 e 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
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.