Evento Workbook.BeforeSave (Excel)

Se produce antes de que el libro se guarde.

Sintaxis

expresión. BeforeSave (SaveAsUI, Cancel)

Expresión Variable que representa un objeto Workbook .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
SaveAsUI Obligatorio Boolean True si se muestra el cuadro de diálogo Guardar como debido a los cambios realizados que deben guardarse en el libro.
Cancel Obligatorio Boolean False al producirse el evento. Si el procedimiento de evento establece el valor de argumento en True, el libro no se guardará al terminar el procedimiento.

Valor devuelto

Nothing

Ejemplo:

En este ejemplo se pide confirmación al usuario antes de guardar el libro.

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

En este ejemplo se usa el evento BeforeSave para comprobar que ciertas celdas contienen datos antes de que se pueda guardar el libro. No se puede guardar el libro hasta que haya datos en las celdas siguientes: D5, D7, D9, D11, D13 y 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

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.