Bonjour
Le code ci-dessous fonctionne très bien sous Excel 2013 sur mon PC mais, une fois le classeur copié sur MAC (Excel 2016), celui-ci ouvre la fenêtre de sélection d'un document mais pas le document voulu.
La macro plante au niveau du 1er "set" ; Problème de syntaxe ?
Pouvez-vous m'éclairer ?
Dim wApp As Word.Application
Dim oDoc As Word.Document
'Affectation des données aux variables
Set wApp = New Word.Application
Set oDoc = wApp.Documents.Add(ThisWorkbook.Path & "\" & "DOCAUTO01-CourrierDevis.docx")
La macro prend des infos sur mon tableur et rempli des champs sur Word. La syntaxe ci-dessous vous parait-elle correcte ?
oDoc.Bookmarks("RefAdress1").Range.Text = ActiveWorkbook.ActiveSheet.Range("B2") 'Nom Etablissement
oDoc.Bookmarks("RefAdress2").Range.Text = ActiveWorkbook.ActiveSheet.Range("BA2") 'Civilité responsable
oDoc.Bookmarks("RefAdress3").Range.Text = ActiveWorkbook.ActiveSheet.Range("BB2") 'Nom responsable
oDoc.Bookmarks("RefAdress4").Range.Text = ActiveWorkbook.ActiveSheet.Range("AZ2") 'Titre responsable
Merci de votre réponse
Le code ci-dessous fonctionne très bien sous Excel 2013 sur mon PC mais, une fois le classeur copié sur MAC (Excel 2016), celui-ci ouvre la fenêtre de sélection d'un document mais pas le document voulu.
La macro plante au niveau du 1er "set" ; Problème de syntaxe ?
Pouvez-vous m'éclairer ?
Dim wApp As Word.Application
Dim oDoc As Word.Document
'Affectation des données aux variables
Set wApp = New Word.Application
Set oDoc = wApp.Documents.Add(ThisWorkbook.Path & "\" & "DOCAUTO01-CourrierDevis.docx")
La macro prend des infos sur mon tableur et rempli des champs sur Word. La syntaxe ci-dessous vous parait-elle correcte ?
oDoc.Bookmarks("RefAdress1").Range.Text = ActiveWorkbook.ActiveSheet.Range("B2") 'Nom Etablissement
oDoc.Bookmarks("RefAdress2").Range.Text = ActiveWorkbook.ActiveSheet.Range("BA2") 'Civilité responsable
oDoc.Bookmarks("RefAdress3").Range.Text = ActiveWorkbook.ActiveSheet.Range("BB2") 'Nom responsable
oDoc.Bookmarks("RefAdress4").Range.Text = ActiveWorkbook.ActiveSheet.Range("AZ2") 'Titre responsable
Merci de votre réponse