1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
| Sub Document_Open()
'
Dim nombase As String
nombase = ActiveDocument.Path & "\toto.xls"
ActiveDocument.MailMerge.MainDocumentType = wdNotAMergeDocument
ActiveDocument.MailMerge.OpenDataSource Name:= _
'**********je supprime le code relatif au publipost qui marche et n'a pas d'intérêt pour la question ************
.Execute Pause:=False
End With
Documents("edittoto.doc").Activate
' ici, j'ai testé avec call effacedata mais idem: marche en pas à pas et pas en "automatique"
MsgBox "effacedata"
Dim xlApp As Object
Dim xlBook As Object
Chemin = ActiveDocument.Path
Set xlApp = GetObject(, "Excel.Application")
Set xlApp = GetObject(Chemin & "\toto.xls")
Set xlBook = xlApp.Application.ActiveWorkbook
MsgBox "avant run macro"
xlBook.Application.Run "'toto.xls'!Module9.effacepublipost"
Set xlApp = Nothing
Set xlBook = Nothing
Documents("edittoto.doc").Close False
End Sub
'*******Idem si je fais une macro à part avec le même code...**************
Sub effacedata()
'
' effacedata Macro
'
MsgBox "effacedata"
Dim xlApp As Object
Dim xlBook As Object
Chemin = ActiveDocument.Path
Set xlApp = GetObject(, "Excel.Application")
Set xlApp = GetObject(Chemin & "\toto.xls")
Set xlBook = xlApp.Application.ActiveWorkbook
MsgBox "avant run macro"
xlBook.Application.Run "'toto.xls'!Module9.effacepublipost"
Set xlApp = Nothing
Set xlBook = Nothing
End Sub |
Partager