Oproepen macro bij het bewaren van een word-document

Status
Niet open voor verdere reacties.

linkav

Gebruiker
Lid geworden
13 jun 2007
Berichten
465
Allen,

Is het mogelijk om vóór het bewaren van een word-document een macro op te roepen? In excel bestaat "Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)". Bestaat dit ook in Word (2007)?
 
Hallo Edmoor,

Bedankt voor uw reactie. Deze had ik ook gevonden, ik ga ervan uit dat dit event enkel optreed als het document gesloten wordt.

Het zou handig zijn als de gebruiker op de "bewaar"-knop (of ctrl+S) drukt dat er een macro opgeroepen kan worden (Dit is wat er in Excel gebeurd).
 
Nee, en dat kun je zelf ook constateren als je in het VBA venster de lijst met opties bekijkt :). Je kunt natuurlijk de knop en de sneltoets programmatisch aanpassen, maar dat lijkt mij een hoop werk. Al kun je hier misschien wat mee:
Code:
Public WithEvents appWord as Word.Application 
 
Private Sub appWord_DocumentBeforeSave (ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean) 
Dim intResponse As Integer 
 
 intResponse = MsgBox("Do you really want to save the document?", vbYesNo) 
 If intResponse = vbNo Then Cancel = True 

End Sub
 
Octafish,

Ik heb je code gebruikt maar als ik ctrl+s druk (dus bewaren) gebeurd er niets...
 
Of deze:
Code:
Private WithEvents App As Word.Application

Private Sub Document_Open()
    Set App = Word.Application
End Sub

Private Sub App_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
    MsgBox ("Voor het opslaan...")
End Sub
Heb je wel het gebruik van macro's ingeschakeld staan?
 
Laatst bewerkt:
Beste,

Bij het openen van het document wordt niet gevraagd om macro's in te schakelen, verder staan er nog macro's in het document en deze runnen wel (wel als ik F5 druk in de macro, het is de bedoeling dat deze macro aangeroepen wordt bij het bewaren van het document of bij het sluiten van het document).
 
En heb je dat stukje code dat ik plaatste al getest?
 
Heb je na het plaatsen van die code wel eerst het document opgeslagen, Word afgesloten en het document weer geopend?
Het is belangrijk dat eerst dit stukje word uitgevoerd:
Code:
Private Sub Document_Open()
    Set App = Word.Application
End Sub

Dat kan je dus ook doen door in die sub te gaan staan en op F5 te drukken.
 
Edmoor,

Het werkt wel!!!!

Ik had nog "PublicWithEvents appWord As Word.Application" staan (voorbeeld van Octafish) ipv "Private WithEvents App As Word.Application"
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan