Notre société a récemment subi une importante mise à niveau du bureau de 2010 à 2016, et nous avons maintenant un problème avec l'une de nos macros VBA, illustrée ci-dessous.Fusion et publipostage VBA - Access 2016 (Runtime Error 287)
Function MergeIt()
Dim objWord As Word.Document
Dim SaveAsName As String
Dim Year As String
Dim DANo As String
Dim Revision As String
Dim strSource As String
Set objWord = GetObject("G:\Dev_&_Tech_Serv\Development\DAAssessTool\MailMerge1.dot", "Word.Document")
' Make Word visible.
objWord.Application.Visible = True
'Set the mail merge data source as the DAApproval Database.
objWord.MailMerge.OpenDataSource Name:="G:\Dev_&_Tech_Serv\Development\DAAssessTool" & "\DARevD.mdb", LinkToSource:=True, Connection:="QUERY qry_Mailmerge", SQLStatement:="Select * from [DAConCheckID]"
' Execute the mail merge.
objWord.MailMerge.Execute
' Close the original form document
objWord.Saved = True
objWord.Close (False)
End Function
L'erreur est de lancer la première ligne de Set - lancer une erreur d'exécution 287 « Erreur définie d'application définie ou objet ». Je fais l'hypothèse que le développeur précédent définit incorrectement le document Word, mais je ne trouve rien en ligne qui montre une méthode différente de définition, ou comment corriger cette erreur. Je passe maintenant à la vaste connaissance de la communauté Stack pour trouver de l'inspiration sur ce qui ne va pas et comment y remédier.
Merci d'avance.