OVH Cloud OVH Cloud

création d'un champ a partir d'une fonction VB

30 réponses
Avatar
Laurent
Bonjour,

Je recherche le moyen de créer un champ sur Word pour transformer
automatiquement les 3 premiers caracteres d'une référence en adresse ou
qu'un champ puisse lancer automatiquement une fonction (ou sub).

Je m'explique :
Je m'occupe de l'impression de document pour nos clients, avant je devais
mettre qu'une seule adresse de retour au client, maintenant que nous avons
fusionné avec 7 autres groupes, je dois mettre, en fonction de la référence
du client, 7 adresses differentes.

J'aurai voulu créer un champs a partir d'une fonction VB de ce style là :



Function RecupAdresse(Ref As String)

If gauche(Ref, 3) = "001" Then
RecupAdresse = "3 Rue Machin 75001 Paris"
ElseIf gauche(Ref, 3) = "002" Then
RecupAdresse = "17 Rue Truc 59000 Lille"
ElseIf gauche(Ref, 3) = "003" Then
RecupAdresse = "23 Rue Bidule 02000 Laon"
ElseIf [7 fois ...]
Else
RecupAdresse = "3 Rue Machin 75001 Paris"
End If

End Function


Pour après mettre le champ sur word comme ça :

{=RecupAdresse(MERGEFIELD "Ref") \* MERGEFORMAT}


Je ne peux pas modifier ma base de données ni modifier le programme qui
lance la fusion (mot de passe)

J'espère avoir été clair ...

Avez-vous une idée ?

Merci pour vos réponse

Amicalement Laurent

10 réponses

1 2 3
Avatar
Circé
Bonjour à tous,


Anacoluthe a exprimé avec précision :
Bonjour !

'Laurent' nous a écrit ...
La références que j'utilise à 17 caractères et les 3 premiers correspondent
au site de mon client.Cette référence est séparée par des espaces par
exemple : "001 10 123 456 789 123". Et pour chaque debut de référence (3
premiers caractères) je dois mettre une adresse de retour de courrier
différente en pied de page


Si votre référence est purement numérique, vous devriez pouvoir extraire
avec un champ formule (partie entière de Ref divisé par je sais pas combien
de milliards - c'est JièL qui va rigoler - ) la partie initiale de REF
Si votre référence est alphanumérique les opérateurs de comparaison
devraient marcher.


Voilà pourquoi je demandais à Laurent le format de sa référence ! ;))

Donc on peut supposer que les espaces sont du pur formatage Excel... Je
ne tiens donc pas compte des deux 0 placés en début de la référence.

On va mettre le champ suivant :
{ SET numero {= int (texte1/100000000000000) } }

qui va affecter une variable "Numero" au nombre entier restant de la
division du numéro de la référence par je ne sais combien de millions
(il n'y a que JièL pour savoir...). La variable "numero" est donc
affecté au premier chiffre de la référence (sans compter les 0).

Ensuite, il suffit de mettre les conditions les unes à la suite des
autres comme a indiqué anacoluthe :

{IF {numero} = 1 "3 Rue Machin 75001 Paris" }
{IF {numero} = 2 "17 Rue Truc 59000 Lille" }
{IF {numero} = 3 "Adresse 3" }
etc

Circé
http://faqword.free.fr


S'il faut absolument une macro, ce n'est pas hypercompliqué mais il
faut utiliser les événements du publipostage de façon à traiter chaque champ
REF pour chaque fusion d'enregistrement (MailMergeBeforeRecordMerge).
Je continue à m'accrocher à une soluce SANS macro :-) ))))

Il va sans dire que ce que nous proposons ici est totalement débile s'il
est possible de travailler à la /source/ avec un champ calculé sur REF.
Si votre source est réellement /intouchable/ (dictature informatique,
système antique totalement sclérosé, développeurs enterrés) pensez
qu'il est possible de travailler avec une source /liée/ : un bête
tableau EXCEL branché sur votre source intouchable peut faire l'affaire.
Là encore je prône une soluce SANS vba.

JièL, je gagne combien de points d'AMIS là ???

Anacoluthe
« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES



Avatar
Circé
Encore une précision :
J'ai fait le test avec un champ de formulaire, et c'est pourquoi j'ai
utilisé le signet "texte1" dans la formule que j'ai donnée.
Laurent, bien entendu, il faut que tu remplaces ce signet par ton champ
de publipostage, c'est à dire :

{ SET numero {= int ( { MERGEFIELD Ref }/100000000000000) } }

CQFD
Circé


On va mettre le champ suivant :
{ SET numero {= int (texte1/100000000000000) } }

qui va affecter une variable "Numero" au nombre entier restant de la division
du numéro de la référence par je ne sais combien de millions (il n'y a que
JièL pour savoir...). La variable "numero" est donc affecté au premier
chiffre de la référence (sans compter les 0).

Ensuite, il suffit de mettre les conditions les unes à la suite des autres
comme a indiqué anacoluthe :

{IF {numero} = 1 "3 Rue Machin 75001 Paris" }
{IF {numero} = 2 "17 Rue Truc 59000 Lille" }
{IF {numero} = 3 "Adresse 3" }
etc

Circé
http://faqword.free.fr


S'il faut absolument une macro, ce n'est pas hypercompliqué mais il
faut utiliser les événements du publipostage de façon à traiter chaque
champ
REF pour chaque fusion d'enregistrement (MailMergeBeforeRecordMerge).
Je continue à m'accrocher à une soluce SANS macro :-) ))))

Il va sans dire que ce que nous proposons ici est totalement débile s'il
est possible de travailler à la /source/ avec un champ calculé sur REF.
Si votre source est réellement /intouchable/ (dictature informatique,
système antique totalement sclérosé, développeurs enterrés) pensez
qu'il est possible de travailler avec une source /liée/ : un bête
tableau EXCEL branché sur votre source intouchable peut faire l'affaire.
Là encore je prône une soluce SANS vba.

JièL, je gagne combien de points d'AMIS là ???

Anacoluthe
« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES




Avatar
Laurent
Anacoluthe, vous n'êtes pas loin de la vérité, le système est antique et
l'application qui pilote Word et Excel est verrouillé et son concepteur
n'est peut être pas enterré, mais il est partie dans les méandre de notre
entreprise, enfin, c'est tout comme .. :-)))

Le problème c'est que la référence est du "texte", si je fais {= int
(texte1/100000000000000) }comme le propose Circé, j'ai le message d'erreur
"!Opérateur manquant"

Et j'ai aussi essayé d'imbriquer des if comme ça (dans ce cas que pour 3
adresses différentes )
{if{MERGEFIELD ref }>"003 00 000 000 000 000" "Adresse pour ref 003"
{if{MERGEFIELD ref }>"002 00 000 000 000 000" "Adresse pour ref 002"
{if{MERGEFIELD ref }>"001 00 000 000 000 000" "Adresse pour ref 001"
"Erreur adresse ref" }}}
Mais ca marche pas non plus.

J'ai fais pas mal d'essai sur les champs, mais je n'ai pas trouvé de
solution.
Je ne vois pas trop comment aborder le lancement d'une macro que pour le
merge où je dois mettre une adresse.

Merci beaucoup de votre aide

Laurent



Merci à tous pour vos réponses

La références que j'utilise à 17 caractères et les 3 premiers
correspondent

au site de mon client.Cette référence est séparée par des espaces par
exemple : "001 10 123 456 789 123". Et pour chaque debut de référence (3
premiers caractères) je dois mettre une adresse de retour de courrier
différente en pied de page

J'ai déjà essayé de faire des conditions inférieurs ("001trucmachin" est
inférieur à "002") comme le propose Anacoluthe, mais ça ne fonctionne pas.

Et la solution de Heureux-Oli en utilisant les options du correcteur
orthographique ne peut pas fonctionner car je dois mettre en haut du
courrier la références (à 17 caractères) du client et en bas l'adresse du
site (adresse qui est fonction des 3 premiers caractères de cette
référence)


Je n'ai pas la possibilité de créer une base provisoire comme le propose
Géo

car l'outil qui est utilisé en ce moment va extraire les données d'un gros
système, va créer un fichier excel et lancer dans la foulée le
publipostage.

Je ne peux pas avoir la main sur les infos pendant le traitement. C'est
pour

ça que je dois travailler que sur Word.

Merci à tous de votre aide.

Amicalement

Laurent






"Laurent" a écrit dans le message de news:

Bonjour,

Je recherche le moyen de créer un champ sur Word pour transformer
automatiquement les 3 premiers caracteres d'une référence en adresse ou
qu'un champ puisse lancer automatiquement une fonction (ou sub).

Je m'explique :
Je m'occupe de l'impression de document pour nos clients, avant je
devais


mettre qu'une seule adresse de retour au client, maintenant que nous
avons


fusionné avec 7 autres groupes, je dois mettre, en fonction de la
référence

du client, 7 adresses differentes.

J'aurai voulu créer un champs a partir d'une fonction VB de ce style là
:





Function RecupAdresse(Ref As String)

If gauche(Ref, 3) = "001" Then
RecupAdresse = "3 Rue Machin 75001 Paris"
ElseIf gauche(Ref, 3) = "002" Then
RecupAdresse = "17 Rue Truc 59000 Lille"
ElseIf gauche(Ref, 3) = "003" Then
RecupAdresse = "23 Rue Bidule 02000 Laon"
ElseIf [7 fois ...]
Else
RecupAdresse = "3 Rue Machin 75001 Paris"
End If

End Function


Pour après mettre le champ sur word comme ça :

{=RecupAdresse(MERGEFIELD "Ref") * MERGEFORMAT}


Je ne peux pas modifier ma base de données ni modifier le programme qui
lance la fusion (mot de passe)

J'espère avoir été clair ...

Avez-vous une idée ?

Merci pour vos réponse

Amicalement Laurent








Avatar
Circé
Bonsoir Laurent,

Laurent a utilisé son clavier pour écrire :
Anacoluthe, vous n'êtes pas loin de la vérité, le système est antique et
l'application qui pilote Word et Excel est verrouillé et son concepteur
n'est peut être pas enterré, mais il est partie dans les méandre de notre
entreprise, enfin, c'est tout comme .. :-)))

Le problème c'est que la référence est du "texte", si je fais {= int
(texte1/100000000000000) }comme le propose Circé, j'ai le message d'erreur
"!Opérateur manquant"


Quel est le format dans Excel ?
Word n'est pas très regardant dans le formatage.
As-tu bien remplacé "texte1" par ton champ {MERGEFIELD ref } ?
As-tu bien utilisé Ctrl+F9 pour metre les { } ?



Et j'ai aussi essayé d'imbriquer des if comme ça (dans ce cas que pour 3
adresses différentes )
{if{MERGEFIELD ref }>"003 00 000 000 000 000" "Adresse pour ref 003"
{if{MERGEFIELD ref }>"002 00 000 000 000 000" "Adresse pour ref 002"
{if{MERGEFIELD ref }>"001 00 000 000 000 000" "Adresse pour ref 001"
"Erreur adresse ref" }}}
Mais ca marche pas non plus.

Déjà, il manque des guillemets...


Circé
http://faqword.free.fr

J'ai fais pas mal d'essai sur les champs, mais je n'ai pas trouvé de
solution.
Je ne vois pas trop comment aborder le lancement d'une macro que pour le
merge où je dois mettre une adresse.

Merci beaucoup de votre aide

Laurent



Merci à tous pour vos réponses

La références que j'utilise à 17 caractères et les 3 premiers correspondent
au site de mon client.Cette référence est séparée par des espaces par
exemple : "001 10 123 456 789 123". Et pour chaque debut de référence (3
premiers caractères) je dois mettre une adresse de retour de courrier
différente en pied de page

J'ai déjà essayé de faire des conditions inférieurs ("001trucmachin" est
inférieur à "002") comme le propose Anacoluthe, mais ça ne fonctionne pas.

Et la solution de Heureux-Oli en utilisant les options du correcteur
orthographique ne peut pas fonctionner car je dois mettre en haut du
courrier la références (à 17 caractères) du client et en bas l'adresse du
site (adresse qui est fonction des 3 premiers caractères de cette référence)

Je n'ai pas la possibilité de créer une base provisoire comme le propose Géo
car l'outil qui est utilisé en ce moment va extraire les données d'un gros
système, va créer un fichier excel et lancer dans la foulée le publipostage.
Je ne peux pas avoir la main sur les infos pendant le traitement. C'est pour
ça que je dois travailler que sur Word.

Merci à tous de votre aide.

Amicalement

Laurent






"Laurent" a écrit dans le message de news:

Bonjour,

Je recherche le moyen de créer un champ sur Word pour transformer
automatiquement les 3 premiers caracteres d'une référence en adresse ou
qu'un champ puisse lancer automatiquement une fonction (ou sub).

Je m'explique :
Je m'occupe de l'impression de document pour nos clients, avant je devais
mettre qu'une seule adresse de retour au client, maintenant que nous avons
fusionné avec 7 autres groupes, je dois mettre, en fonction de la référence
du client, 7 adresses differentes.

J'aurai voulu créer un champs a partir d'une fonction VB de ce style là



Function RecupAdresse(Ref As String)

If gauche(Ref, 3) = "001" Then
RecupAdresse = "3 Rue Machin 75001 Paris"
ElseIf gauche(Ref, 3) = "002" Then
RecupAdresse = "17 Rue Truc 59000 Lille"
ElseIf gauche(Ref, 3) = "003" Then
RecupAdresse = "23 Rue Bidule 02000 Laon"
ElseIf [7 fois ...]
Else
RecupAdresse = "3 Rue Machin 75001 Paris"
End If

End Function


Pour après mettre le champ sur word comme ça :

{=RecupAdresse(MERGEFIELD "Ref") * MERGEFORMAT}


Je ne peux pas modifier ma base de données ni modifier le programme qui
lance la fusion (mot de passe)

J'espère avoir été clair ...

Avez-vous une idée ?

Merci pour vos réponse

Amicalement Laurent






Avatar
JièL
Bonjoir(c) Anacoluthe

Le 28/04/2007 14:47 vous avez écrit ceci :
JièL, je gagne combien de points d'AMIS là ???


ppppfffuuuiiiittttttt au moins 40 millions là ;-)

« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES


C'est comme un macroteur alors ? ;-)

JièL Corps ne m'usent pas (elle me plait celle la tiens) ;-)

Avatar
Laurent
Bonsoir Circé,

Oui j'ai bien utilisé Ctrl+F9 pour mettre les { }. J'ai l'habitude d'écrire
des champs dans Word.

Je ne vois pas où il manque des guillemets dans la formule ci-dessous.

Sais-tu si je peux facilement utiliser une macro avec des champs ?

Merci de ton aide. Je dois me déconnecter là, je me reconnecte demain pour
faire de nouveaux essais

Amicalement Laurent




"Circé" a écrit dans le message de news:

Bonsoir Laurent,

Laurent a utilisé son clavier pour écrire :
Anacoluthe, vous n'êtes pas loin de la vérité, le système est antique et
l'application qui pilote Word et Excel est verrouillé et son concepteur
n'est peut être pas enterré, mais il est partie dans les méandre de
notre


entreprise, enfin, c'est tout comme .. :-)))

Le problème c'est que la référence est du "texte", si je fais {= int
(texte1/100000000000000) }comme le propose Circé, j'ai le message
d'erreur


"!Opérateur manquant"


Quel est le format dans Excel ?
Word n'est pas très regardant dans le formatage.
As-tu bien remplacé "texte1" par ton champ {MERGEFIELD ref } ?
As-tu bien utilisé Ctrl+F9 pour metre les { } ?



Et j'ai aussi essayé d'imbriquer des if comme ça (dans ce cas que pour 3
adresses différentes )
{if{MERGEFIELD ref }>"003 00 000 000 000 000" "Adresse pour ref 003"
{if{MERGEFIELD ref }>"002 00 000 000 000 000" "Adresse pour ref 002"
{if{MERGEFIELD ref }>"001 00 000 000 000 000" "Adresse pour ref 001"
"Erreur adresse ref" }}}
Mais ca marche pas non plus.

Déjà, il manque des guillemets...


Circé
http://faqword.free.fr

J'ai fais pas mal d'essai sur les champs, mais je n'ai pas trouvé de
solution.
Je ne vois pas trop comment aborder le lancement d'une macro que pour le
merge où je dois mettre une adresse.

Merci beaucoup de votre aide

Laurent



Merci à tous pour vos réponses

La références que j'utilise à 17 caractères et les 3 premiers
correspondent



au site de mon client.Cette référence est séparée par des espaces par
exemple : "001 10 123 456 789 123". Et pour chaque debut de référence
(3



premiers caractères) je dois mettre une adresse de retour de courrier
différente en pied de page

J'ai déjà essayé de faire des conditions inférieurs ("001trucmachin"
est



inférieur à "002") comme le propose Anacoluthe, mais ça ne fonctionne
pas.




Et la solution de Heureux-Oli en utilisant les options du correcteur
orthographique ne peut pas fonctionner car je dois mettre en haut du
courrier la références (à 17 caractères) du client et en bas l'adresse
du



site (adresse qui est fonction des 3 premiers caractères de cette
référence)




Je n'ai pas la possibilité de créer une base provisoire comme le
propose Géo



car l'outil qui est utilisé en ce moment va extraire les données d'un
gros



système, va créer un fichier excel et lancer dans la foulée le
publipostage.



Je ne peux pas avoir la main sur les infos pendant le traitement. C'est
pour



ça que je dois travailler que sur Word.

Merci à tous de votre aide.

Amicalement

Laurent






"Laurent" a écrit dans le message de news:

Bonjour,

Je recherche le moyen de créer un champ sur Word pour transformer
automatiquement les 3 premiers caracteres d'une référence en adresse
ou




qu'un champ puisse lancer automatiquement une fonction (ou sub).

Je m'explique :
Je m'occupe de l'impression de document pour nos clients, avant je
devais




mettre qu'une seule adresse de retour au client, maintenant que nous
avons




fusionné avec 7 autres groupes, je dois mettre, en fonction de la
référence




du client, 7 adresses differentes.

J'aurai voulu créer un champs a partir d'une fonction VB de ce style








Function RecupAdresse(Ref As String)

If gauche(Ref, 3) = "001" Then
RecupAdresse = "3 Rue Machin 75001 Paris"
ElseIf gauche(Ref, 3) = "002" Then
RecupAdresse = "17 Rue Truc 59000 Lille"
ElseIf gauche(Ref, 3) = "003" Then
RecupAdresse = "23 Rue Bidule 02000 Laon"
ElseIf [7 fois ...]
Else
RecupAdresse = "3 Rue Machin 75001 Paris"
End If

End Function


Pour après mettre le champ sur word comme ça :

{=RecupAdresse(MERGEFIELD "Ref") * MERGEFORMAT}


Je ne peux pas modifier ma base de données ni modifier le programme
qui




lance la fusion (mot de passe)

J'espère avoir été clair ...

Avez-vous une idée ?

Merci pour vos réponse

Amicalement Laurent










Avatar
JièL
Bonjoir(c) Laurent

Le 28/04/2007 23:29 vous avez écrit ceci :
Le problème c'est que la référence est du "texte", si je fais {= int
(texte1/100000000000000) }comme le propose Circé, j'ai le message d'erreur
"!Opérateur manquant"


heum... il me semble que Circé à écrit qqchose comme
{ SET numero {= int ( { MERGEFIELD Ref }/100000000000000) } }
non ?
Question bête : vous utilisez bien Ctrl+F9 pour mettre les {} ?

d'autre part
Et j'ai aussi essayé d'imbriquer des if comme ça (dans ce cas que pour 3
adresses différentes )
{if{MERGEFIELD ref }>"003 00 000 000 000 000" "Adresse pour ref 003"
{if{MERGEFIELD ref }>"002 00 000 000 000 000" "Adresse pour ref 002"
{if{MERGEFIELD ref }>"001 00 000 000 000 000" "Adresse pour ref 001"
"Erreur adresse ref" }}}
Mais ca marche pas non plus.


le but de la comparaison est de le faire avec des valeurs, pas avec des
textes, essayez donc avec
{if {MERGEFIELD ref }>300000000000000 "Adresse pour ref 003"
{if {MERGEFIELD ref }>200000000000000 "Adresse pour ref 002"
{if {MERGEFIELD ref }>100000000000000 "Adresse pour ref 001"

mais la aussi je pense qu'il va y avoir un soucis car ça fait un peu
beaucoup de "chiffres" à gérer pour le gestionnaire de "mots"

Je ne vois pas trop comment aborder le lancement d'une macro que pour le
merge où je dois mettre une adresse.


Moi j'essaierai de prendre le problème d'un autre coté.
Vous n'avez pas la main sur l'application qui génère la source de données,
OK, mais c'est bien un fichier Excel si j'ai bien suivi, non ?
Et peu importe qui pilote car en fait vous avez accès au document qui
permet la fusion.
Donc, moi je dérouterai bien le "pilote" pour faire ce que je veux moi
même avec la source de donnée vu qu'il semblerait que vous pouvez lancer
une macro sur le doc de fusion, non ?

Par contre je n'ai pas d'idée sur le comment arrêter le pilotage, sauf que
si on génère un plantage de l'appli en question on doit ensuite pouvoir
reprendre les commandes, non ?

Je dis ça comme ça, mais il me semble que ça serait plus simple de pouvoir
gérer les données que de s'em***béter avec Word qui est super nul dans ce
domaine.

Ce n'est qu'une idée en passant, a voir si elle est exploitable

Merci beaucoup de votre aide


--
JièL / Jean-Louis GOUBERT
Là bas mieux qu'en face ;-) http://forums.offices.free.fr/
La nouvelle FAQ Outlook est là : http://faq.outlook.free.fr/index.php
Les stats de CDO : http://faq.outlook.free.fr/cdo/

Avatar
Laurent
Bonjour JièL,

Tu as complètement raison, le plus simple serai de gérer le champ sur Excel
mais l'appli ne peut pas être arrêtée (on ne peut pas la planter) et elle
est trop lourde pour la refaire complètement (elle va récupérer des infos
sur un système antique et en fonction du cas, va sélectionner un courrier
correspondant - j'ai 30 courriers différents) et je n'ai pas droit à
l'erreur la dessus, on envoie 50 000 courriers pas mois avec .. C'est pas
rien !!

J'ai essayé ta solution en faisant des comparaisons par valeurs, j'ai ça
comme retour : Erreur ! Code op. conditionnel inconnu.

Je reconnais que le problème est pas simple ... Je suis à cours d'idée là
....

Merci beaucoup de ton aide.

Laurent


"JièL" a écrit dans le message de
news:
Bonjoir(c) Laurent

Le 28/04/2007 23:29 vous avez écrit ceci :
Le problème c'est que la référence est du "texte", si je fais {= int
(texte1/100000000000000) }comme le propose Circé, j'ai le message
d'erreur


"!Opérateur manquant"


heum... il me semble que Circé à écrit qqchose comme
{ SET numero {= int ( { MERGEFIELD Ref }/100000000000000) } }
non ?
Question bête : vous utilisez bien Ctrl+F9 pour mettre les {} ?

d'autre part
Et j'ai aussi essayé d'imbriquer des if comme ça (dans ce cas que pour 3
adresses différentes )
{if{MERGEFIELD ref }>"003 00 000 000 000 000" "Adresse pour ref 003"
{if{MERGEFIELD ref }>"002 00 000 000 000 000" "Adresse pour ref 002"
{if{MERGEFIELD ref }>"001 00 000 000 000 000" "Adresse pour ref 001"
"Erreur adresse ref" }}}
Mais ca marche pas non plus.


le but de la comparaison est de le faire avec des valeurs, pas avec des
textes, essayez donc avec
{if {MERGEFIELD ref }>300000000000000 "Adresse pour ref 003"
{if {MERGEFIELD ref }>200000000000000 "Adresse pour ref 002"
{if {MERGEFIELD ref }>100000000000000 "Adresse pour ref 001"

mais la aussi je pense qu'il va y avoir un soucis car ça fait un peu
beaucoup de "chiffres" à gérer pour le gestionnaire de "mots"

Je ne vois pas trop comment aborder le lancement d'une macro que pour le
merge où je dois mettre une adresse.


Moi j'essaierai de prendre le problème d'un autre coté.
Vous n'avez pas la main sur l'application qui génère la source de données,
OK, mais c'est bien un fichier Excel si j'ai bien suivi, non ?
Et peu importe qui pilote car en fait vous avez accès au document qui
permet la fusion.
Donc, moi je dérouterai bien le "pilote" pour faire ce que je veux moi
même avec la source de donnée vu qu'il semblerait que vous pouvez lancer
une macro sur le doc de fusion, non ?

Par contre je n'ai pas d'idée sur le comment arrêter le pilotage, sauf que
si on génère un plantage de l'appli en question on doit ensuite pouvoir
reprendre les commandes, non ?

Je dis ça comme ça, mais il me semble que ça serait plus simple de pouvoir
gérer les données que de s'em***béter avec Word qui est super nul dans ce
domaine.

Ce n'est qu'une idée en passant, a voir si elle est exploitable

Merci beaucoup de votre aide


--
JièL / Jean-Louis GOUBERT
Là bas mieux qu'en face ;-) http://forums.offices.free.fr/
La nouvelle FAQ Outlook est là : http://faq.outlook.free.fr/index.php
Les stats de CDO : http://faq.outlook.free.fr/cdo/



Avatar
Geo

on envoie 50 000 courriers pas mois avec .. C'est pas rien !!


En effet.

J'ai essayé ta solution en faisant des comparaisons par valeurs, j'ai ça
comme retour : Erreur ! Code op. conditionnel inconnu.


L'ennui c'est que la syntaxe des champs n'est pas très précise,
avez-vous essayé en mettant un espace entre le > et le " ?

--
A+

Avatar
Anacoluthe
Bonjour !

'Laurent' nous a écrit ...
Je reconnais que le problème est pas simple ... Je suis à cours d'idée là
....


Pouvez-vous envoyer un exemple de la base et du document de publipostage
souhaité sur http://cjoint.com/ ?

Si y'a pas moyen de faire autrement, on sortira vite fait la meule à macros !

[HS} C'est bête j'étais bien parti pour que JièL me refile des points
d'AMIS (Anti-Macros Inutilement Superfétatoires)
encore qu'avec sa macro de transfert de matière dans un éculsystème
je ne sais pas s'il va rester crédible :-) ))))))

Anacoluthe
« Un gentleman, c'est quelqu'un qui sait jouer
de la cornemuse et qui n'en joue pas. »
- Pierre DESPROGES

--
Oui un macroteur doit être un gentleman avec son vba
Comment dit-on pour une macroteuse ?

1 2 3