Application.DocumentBeforeClose event (Word)

Occurs immediately before any open document closes.


If you are working with a document embedded within another document, this event will not occur.


Private Sub expression 'DocumentBeforeClose** (Doc As Document**, Cancel As Boolean)

expression A variable that represents an Application object declared with events in a class module.


Name Required/Optional Data type Description
Doc Required Document The document that's being closed.
Cancel Required Boolean False when the event occurs. If the event procedure sets this argument to True, the document doesn't close when the procedure is finished.


For more information about using events with the Application object, see Using events with the Application object.


This example prompts the user for a yes or no response before closing any document. This code must be placed in a class module, and an instance of the class must be correctly initialized to see this example work; see Using events with the Application object for directions on how to accomplish this.

Public WithEvents appWord as Word.Application 
Private Sub appWord_DocumentBeforeClose _ 
        (ByVal Doc As Document, _ 
        Cancel As Boolean) 
    Dim intResponse As Integer 
    intResponse = MsgBox("Do you really " _ 
        & "want to close the document?", _ 
    If intResponse = vbNo Then Cancel = True 
End Sub

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.