Fusion word depuis une Macro Excel - VB/VBA/VBS - Programmation
MarshPosté le 03-05-2005 à 14:46:45
Salut! Je cherche à effectuer une fusion d'un fichier word avec un fichier Excel depuis une macro excel! Avec l'enregistreur de macro word, j'ai récupéré le code de la fusion pourl'insérer dans ma macro. Ce qui em donne :
"If DocWord.MailMerge.State = wdMainAndDataSource Then With DocWord.MailMerge .Destination = wdSendToNewDocument .MailAsAttachment = False .MailAddressFieldName = "" .MailSubject = "" .SuppressBlankLines = True With .DataSource .FirstRecord = 1 .LastRecord = 1 End With .Execute Pause:=True End With End If"
Le problème est que je souhaite modifier avec ma macro la source de la fusion! J'ai essayé avec ".Datasource.Name = nomdemavariable" mais là, quand je compile, une erreur apparait m'indiquant que je ne peut pas "affecter à une propriété en lecture seule" Or mon fichier Word est ouvert sans être ReadOnly. Alors si quelqu'un peut m'aider pour pouvoir changer le chemin de la source de la fusion, cela m'aiderait beaucoup!
Marsh Posté le 03-05-2005 à 14:46:45
Salut! Je cherche à effectuer une fusion d'un fichier word avec un fichier Excel depuis une macro excel! Avec l'enregistreur de macro word, j'ai récupéré le code de la fusion pourl'insérer dans ma macro. Ce qui em donne :
"If DocWord.MailMerge.State = wdMainAndDataSource Then
With DocWord.MailMerge
.Destination = wdSendToNewDocument
.MailAsAttachment = False
.MailAddressFieldName = ""
.MailSubject = ""
.SuppressBlankLines = True
With .DataSource
.FirstRecord = 1
.LastRecord = 1
End With
.Execute Pause:=True
End With
End If"
Le problème est que je souhaite modifier avec ma macro la source de la fusion! J'ai essayé avec ".Datasource.Name = nomdemavariable" mais là, quand je compile, une erreur apparait m'indiquant que je ne peut pas "affecter à une propriété en lecture seule"
Or mon fichier Word est ouvert sans être ReadOnly. Alors si quelqu'un peut m'aider pour pouvoir changer le chemin de la source de la fusion, cela m'aiderait beaucoup!
Merci d'avance!