OVH Cloud OVH Cloud

[vba] Code vba avancé : qui peut m'aider svp ?

2 réponses
Avatar
tf
Bonjour,


Avec vba, j'utilise l'objet "MailMerge".
(je suis obligé d'utiliser cet objet pour des raisons d'antécédent).


Je n'arrive pas à trouver l'équivalent de la propriété ".Body"
pour insérer du texte dans le corps du message

qch qui serait du style :
.Body = "mon texte ici"



Merci
T.

2 réponses

Avatar
Anacoluthe
Bonjour !

"tf" nous a écrit ...
Avec vba, j'utilise l'objet "MailMerge".
Je n'arrive pas à trouver l'équivalent de la propriété ".Body"


On n'a pas encore bien compris la question...
Si chaque document de fusion n'est pas envoyé attaché,
alors tout le texte de fusion est le 'Body' du message...
Ceci dit pour du spamipostage en vba, Outlook c'est mieux.
Vous n'avez pas précisé votre version (WD2003 s'est enrichi
en spamipostage).

Anacoluthe
« Je ne cherche pas à connaître les réponses,
je cherche à comprendre les questions. »
- CONFUCIUS

PS [HS] pour les amis du forum
Anacoluthe très occupé avec Nuindacil and C°
vous abandonne 48 heures - - - à bientôt - - -

Avatar
tf
J'ai un et un seul gros document que j'ai segmenté en autant de pages
(ou emails) que de clients cités dans ce document.


En utilisant l'enregistrement de la macro, j'ai pu récupérer le code
vba correspondant, ci-dessous.

Cela fait presque tout ce que je veux :
- sauf : indiquer du texte libre dans le corps de message pour
chaque mail envoyé
--------------------------------------------------------------------------
For Each afield In ActiveDocument.MailMerge.DataSource.DataFields
Selection.WholeStory
With ActiveDocument.MailMerge
.Destination = wdSendToEmail
.SuppressBlankLines = True
.MailSubject = "My subject is _____"
////////////////////////////////////////////////////////////////////////////
//////////////////////
// ici, j'aimerais bien insérer qch comme .Body="mon texte libre"
////////////////////////////////////////////////////////////////////////////
////////////////////////

With .DataSource
.FirstRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord
.LastRecord = ActiveDocument.MailMerge.DataSource.ActiveRecord


End With
.Execute Pause:úlse
End With

ActiveDocument.MailMerge.DataSource.ActiveRecord = wdNextRecord
Next afield
------------

Si vous aviez une astuce, cela m'aiderait beaucoup....

Merci d'avance





"Anacoluthe" a écrit dans le message news:

Bonjour !

"tf" nous a écrit ...
Avec vba, j'utilise l'objet "MailMerge".
Je n'arrive pas à trouver l'équivalent de la propriété ".Body"


On n'a pas encore bien compris la question...
Si chaque document de fusion n'est pas envoyé attaché,
alors tout le texte de fusion est le 'Body' du message...
Ceci dit pour du spamipostage en vba, Outlook c'est mieux.
Vous n'avez pas précisé votre version (WD2003 s'est enrichi
en spamipostage).

Anacoluthe
« Je ne cherche pas à connaître les réponses,
je cherche à comprendre les questions. »
- CONFUCIUS

PS [HS] pour les amis du forum
Anacoluthe très occupé avec Nuindacil and C°
vous abandonne 48 heures - - - à bientôt - - -