Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

macro ne fonctionnant plus sous OFFICE 2003

3 réponses
Avatar
alain
Bonjour;

Lamacro suivnate fonctionnait parfaitement dans mon ancienne version de Word
(version XP) et donne un message d'erreur avec Word 2003:

Public Sub MAIN()
WordBasic.MailMerge CheckErrors:=1, Destination:=0, MergeRecords:=0,
From:="", To:="", Suppression:=0, MailMerge:=1, MailSubject:="",
MailAsAttachment:=0, MailAddress:=""
WordBasic.NextWindow
WordBasic.FileClose (2)
End Sub

le message d'erreur est le sivant:

erreur d'exécution 509:
lacommande MailMerge n'est pas disponible à cause de MailMerge

quelqu'un a-t-il une idée pour corriger ce problème ?

merci par avance

3 réponses

Avatar
Anacoluthe
Bonjour !

'alain' nous a écrit ...
Lamacro suivnate fonctionnait parfaitement dans mon ancienne version de Word
(version XP) et donne un message d'erreur avec Word 2003:
Public Sub MAIN()
WordBasic.MailMerge CheckErrors:=1, Destination:=0, MergeRecords:=0,
From:="", To:="", Suppression:=0, MailMerge:=1, MailSubject:="",
MailAsAttachment:=0, MailAddress:=""
WordBasic.NextWindow
WordBasic.FileClose (2)
End Sub


Cette macro transcrite du vieux WordBasic semble correcte .

L'erreur n'est pas là. Votre document principal ne dispose pas/plus
d'une liaison correcte avec une base de donnée. Cochez Outils / Options
/ Général / 'Confirmation des conversions lors de l'ouverture'
puis recommencez l'étape 2 de liaison à vos données en choisissant
un protocole DDE, puis enfin ré-enregistrez le document principal.

Une autre explication serait la sécurité SQL introduite dans 2003
qui serait mal gérée en amont. En principe un publipostage par macro
demande à l'utilisateur d'accepter la requête.

Il serait bon d'en profiter pour ré-écrire en bon vba cet
ancien publipostage ...

Anacoluthe
« Un bienfait perd sa grâce à le trop publier. »
- Pierre CORNEILLE

Avatar
alain
Merci pour votre réponse !
je vais essayer les conseils que vous me donnez par contre étant nul en VBA
je serais bien incapable de reécrire cette macro faite par un collègue il y a
quelques années. Y A T il un site ou je pourrais essayer de trouver les
commandes équivalente car j'ai essayé Microsoft sans succé?


Bonjour !

'alain' nous a écrit ...
Lamacro suivnate fonctionnait parfaitement dans mon ancienne version de Word
(version XP) et donne un message d'erreur avec Word 2003:
Public Sub MAIN()
WordBasic.MailMerge CheckErrors:=1, Destination:=0, MergeRecords:=0,
From:="", To:="", Suppression:=0, MailMerge:=1, MailSubject:="",
MailAsAttachment:=0, MailAddress:=""
WordBasic.NextWindow
WordBasic.FileClose (2)
End Sub


Cette macro transcrite du vieux WordBasic semble correcte .

L'erreur n'est pas là. Votre document principal ne dispose pas/plus
d'une liaison correcte avec une base de donnée. Cochez Outils / Options
/ Général / 'Confirmation des conversions lors de l'ouverture'
puis recommencez l'étape 2 de liaison à vos données en choisissant
un protocole DDE, puis enfin ré-enregistrez le document principal.

Une autre explication serait la sécurité SQL introduite dans 2003
qui serait mal gérée en amont. En principe un publipostage par macro
demande à l'utilisateur d'accepter la requête.

Il serait bon d'en profiter pour ré-écrire en bon vba cet
ancien publipostage ...

Anacoluthe
« Un bienfait perd sa grâce à le trop publier. »
- Pierre CORNEILLE




Avatar
Anacoluthe
Bonjour !

'alain' nous a écrit ...
je vais essayer les conseils que vous me donnez par contre étant nul en VBA
je serais bien incapable de reécrire cette macro faite par un collègue il y a
quelques années. Y A T il un site ou je pourrais essayer de trouver les
commandes équivalente car j'ai essayé Microsoft sans succé?


Les équivalences WordBasic sont toutes listées dans l'Aide VBA
Cherchez WordBasic puis la commande française Fusion dans la
page des équivalences M comme MailMerge.
(Ce n'est pas logique, mébon c'est fréquent avec l'Aide de Word :-p )

Ceci dit votre vieille macro WordBasic se contentait simplement
de lancer une fusion directe sur l'imprimante avec tous les
paramètres par défaut. Il vous suffit d'enregistrer ça avec
l'enregistreur (Outils / Macro / Nouvelle macro ) pour obtenir
la même en vba ... :-)

Anacoluthe
« Un bienfait perd sa grâce à le trop publier. »
- Pierre CORNEILLE