VB + Word + Excel !!! HELP !

Messages postés
4
Date d'inscription
vendredi 12 juillet 2002
Statut
Membre
Dernière intervention
12 juillet 2002
-
Messages postés
4
Date d'inscription
vendredi 12 juillet 2002
Statut
Membre
Dernière intervention
12 juillet 2002
-
Bonjour,

Je suis en train de créer une appli professionnelle en VB
qui réalise plusieurs fois à la suite le publipostage
entre un fichier source excel, et un modèle Word différent
à chaque publipostage.
L'appli VB crée au démarrage et en fond de tâche, une
appli Word et une appli Excel, dans lesquelles seront
ouverts tous les documents suivants, à savoir le document
source Excel, puis le document modèle Word, et enfin le
document résultat du publipostage dans un autre document
Word. Ensuite ces 3 documents sont fermés, et on passe au
publipostage suivant, en ouvrant le fichier Excel, puis le
modèle, etc, etc ...
Cependant au bout de 24 ( précisément !! ) publipostages,
un message d'erreur "Le nombre de canaux DDE ouvert est
trop élevé.Veuillez fermer un fenêtre" s'affiche.

Que signifie ce message, et où est mon erreur ???
Merci de m'aider !

6 réponses

Messages postés
48
Date d'inscription
mercredi 11 octobre 2000
Statut
Membre
Dernière intervention
22 juin 2005

g pas trop compris
donc moi ce ke j'ai plus ou moins compris c ke tu as une fichier source excel et un fichier source word et 1 troisième fichier ki se génére et puis est sauvegarder puis on ouvre un ot fichier pour être générer c bien ça?

si tel est le cas eske tu as pensé à faire set <objet> = nothing et <objet>.close?

ça peut venir de là.
regarde ds les processus en cours chui sur ke tu verras une tonne de word.exe ou excel.exe
Messages postés
4
Date d'inscription
vendredi 12 juillet 2002
Statut
Membre
Dernière intervention
12 juillet 2002

J'étais parti sur cette idée aussi, mais y'a aucun souci de ce côté là ... j'ai q'une seule appli Word, et une seule Excel, créees 1 fois au début, et dedans j'ouvre des documents, que je referme ensuite . Et à la fin seulement je libère les 2 applis par un quit et un nothing.
Du coup je n'ai aucune tâche résiduelle word.exe ou excel.exe.

Ce qu'il y a c'est que le message d'erreur "max de DDE atteint" ne m'aide pas vraiment à situer précisément le problème.

Si tu as une autre idée, elle est la bienvenue, et merci !
Messages postés
48
Date d'inscription
mercredi 11 octobre 2000
Statut
Membre
Dernière intervention
22 juin 2005

oui mais entre chaque édition tu fais koi kan tu refermes? tu fais set <objet> = nothing ou pas? et ossi le <objet>.close
Messages postés
4
Date d'inscription
vendredi 12 juillet 2002
Statut
Membre
Dernière intervention
12 juillet 2002

Ben je ne fais pas de "Set" pour les documents que j'ouvre donc pas de nothing ... pour Excel je fais un "ActiveWorbook.Add" et à la fin un "ActiveWorbook.close", et pour Word je fais un "ActiveDocument.Open" puis "ActiveDocument.Close" pour fermer.
Est-ce que je devrais plutôt faire :
Set DocExcel = createobject("excel.sheet")
puis ensuite close et nothing ???
Messages postés
48
Date d'inscription
mercredi 11 octobre 2000
Statut
Membre
Dernière intervention
22 juin 2005

ça je sais pas du tout mais moi j'utilise set <objet> = new excel.application
et à la fin un set <objet> = nothing
Messages postés
4
Date d'inscription
vendredi 12 juillet 2002
Statut
Membre
Dernière intervention
12 juillet 2002

C'est ce que je fais aussi ... mais pour les documents internes aux applis Word et Excel, là je ne fais pas de Set ni de Nothing ... est-ce que c'est là que ça pêche ??? je sais pas ...