Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres Transfert de données Excel dans formulaire Word

jeanmi

XLDnaute Occasionnel
Bonjour à tous,

Je suis sous 2003 pour word et excel,

Ce que j’aimerai faire, mais je n’arrive pas à trouver des exemples de mise en œuvre pour essayer d’adapter à mon cas.
Je souligne que je ne sait pas programmer avec le code VBA, mais il semble que cela soit, d'après les lectures que j'ai faite la seule solution pour mettre en œuvre mon projet.
donc, je fait des essais mais c'est pas concluant.

a) J’ai des données dans un document Excel (X cellules, Nom, Prénom, adresse, CP, Tél, et autres…)
b) Je veux récupérer les données des cellules est les attribuées aux champs du formulaire d'un doc Word, uniquement si la première cellule de la ligne est non vide.
c) sauvegarder ce doc avec le nom d'une cellule + au autre
d) créer un PDF de ce doc mais ça on verra plus tard.

Donc par exemple :

La cellule Excel A3 passe dans le champs formulaire Word Texte1, et ainsi de suite… si la cellule A1 est non vide ou comporte un x (au choix, le plus simple à mettre en œuvre)
La cellule Excel B8, si il y a une donnée, passe dans CaseACocher1, donc, case à cocher et ainsi de suite…
A la fin le document est sauvegardé avec le nom + la date de deux cellule.
et la procédure continue pour toutes les lignes A1, normalement il y aura moins de 100 lignes à analyser.

Avez-vous une piste, un début de solution ?
j'ai tenté de faire quelque macro, mais rien ne marche correctement jusqu'au bout.
j'ai mis mes fichier à jour. depuis excel Ctrl+T pour lancer ma procédure qui ne marche pas encore il n'y à que l'ouverture du doc après ça bloc.

En vous remerciant par avance

Bien cordialement
 

Pièces jointes

  • 2021-08-planning-vesrion 2.xls
    117 KB · Affichages: 23
  • BL vierge version 2.doc
    82 KB · Affichages: 16
Dernière édition:

herve62

XLDnaute Barbatruc
Supporter XLD
Bonsoir
Un peu tard pour travailler ...et un WE !!
sinon on pourra regarder plus près ... plus tard !
J'ai bien bossé sur un cas d'ici, assez complexe il y a qq années ... que j'ai gardé
Si je me rappelle ?? la base , il faut affecter/insérer des SIGNETS dans Word
style : what:=wdGoToBookmark, Name:="fact"
fact > doit être un signet dans le docx
mais ci joint un exemple plus simple extrait de mon grenier ( avec le docx)
A suivre
 

Pièces jointes

  • exportWord_chrix_v1.xlsm
    21.9 KB · Affichages: 17
  • FACTURE.docx
    12.8 KB · Affichages: 15

jeanmi

XLDnaute Occasionnel
Bonjour,

Merci pour la réponse, je regarde . j'ai fait du vide dans mes deux fichiers car il y avait beaucoup de macros non utilisées, tous mes essais non concluant. ils sont donc passé en version 2.

cordialement
 

jeanmi

XLDnaute Occasionnel
Bonjour,

j'ai regardé, mais la commande bouton ne fonctionne pas après ouverture du fichier, sur mon PC, Je suis avec Excel 2003.
lorsque je vais dans macro, je ne trouve aucune macro pour la démarrer directement alors qu'elles sont bien visibles dans visual basic editor ?
Merci pour l'aide
Cordialement
 

herve62

XLDnaute Barbatruc
Supporter XLD
Bonjour
Bon là j'ai le temps de regarder ton fichier , j'ai retrouvé ma grosse appli et donc extraits la sub concernée
Donc j'ai commencé avec 3 champs
Ci joint le dossier avec le BL vierge , le fichier xls, et le doc rempli qui peut être supprimé si on relance .Garder le VIERGE !! ( c'est dans le code j'enregistre sous un nouveau nom)
J'ai tout laissé en 2003 ici tout fonctionne
Un petit hic pour la suite : si on cherche la dernière ligne pour créer au dernier de la liste , pas évident car avec A, B pour repère ça ne va pas : ligne de titre en A , total en B (end(xlup) est faux)
Pour bien il faudrait une colonne ou en remontant de 100 par exemple on arrive au dernier empl.
Après je ne sais pas le critère de création du BL , ?
Code dans Module4 evec explications
 

Pièces jointes

  • tr_word.zip
    76.7 KB · Affichages: 28

jeanmi

XLDnaute Occasionnel
Bonjour et merci pour ta réponse rapide,

j'ai testé et dès le début j'ai un message : projet ou bibliothéque introuvable
j'ai cherché sur le net et j'ai trouvé ce qui suit, mais j'ai rien compris à ce qu'il faut faire.

Lorsque la bibliothèque est référencée dans le projet, elle l'est sur toutes les machines qui possèdent cette bibliothèque.

Si tu développes en 2007 et que tu utilises ton projet sur une machine 2003, tu auras un message d'erreur pour signaler que la référence n'est pas correcte et c'est le cas dans l'autre sens aussi.

Si tu souhaites ne pas avoir ce message lors d'un changement de version, il faut travailler en LateBinding, on ne lie plus la bibliothèque au projet, mais on la "déclare" dans le code.


Dans mon fichier en module 1, il y a une macro qui semble fonctionner, Sub ouverture_doc_vierge, mais je ne l'ai pas testé sur un autre pc avec une autre version, 2007 par exemple. sur mon PC ça ouvre bien mon fichier.

As tu une solution pour m'aider
merci d'avance

cordialement
 

herve62

XLDnaute Barbatruc
Supporter XLD
Je ne me rappelle plus de 2003 ? plus personne ne l'utilise
Tu n'as pas dans 'Outils" > Référence : Microsoft Word ..... ?
J'ai écris en début de sub qu'il fallait cocher
il faut voir si tu as : Microsoft word 11.0 object library
 

jeanmi

XLDnaute Occasionnel
re bonjour,

Après plusieurs heures de recherche j'ai enfin trouvé ou sélectionner Microsoft word 11.0 object library.

C'était tous simplement dans le menu outil mais lorsque on est dans visual basic editor et moi je cherché partout sauf là.

Maintenant ça bloc sur "WordDoc.SaveAs2 NomDoc ' On l'enregistre" erreur d'exécution 438

De plus si je relance une deuxième fois la séquence, Excel part dans une boucle pour finir d'afficher "microsoft office attend la fin de l'exécution d'une action OLE d'une autre application", donc pour en sortir Ctrl+alt+suppr , là j'ai le massage "BL vierge est verrouillé pour modification pas "xxx"
Donc j'éteint mon PC et c'est reparti on peut recommencer.

Y a t-il une solution ?
Merci d'avance

cordialement
 

jeanmi

XLDnaute Occasionnel
j'ai regardé mais pas trouvé comment faire et prix pour passer dans une autre version.
ma question mes autres macros créées sous 2003 ne fonctionnerons peut-être plus avec une version 2019 par exemple ?
peut-on avoir deux version sur un PC pour continuer à utiliser mes anciennes macros
 
Dernière édition:

jeanmi

XLDnaute Occasionnel
Bonjour herve62, bonjour à tous

Je suis passé en office 2019 en espérant ne plus avoir de problème.

J’ai lancé la macro (#5) et la le début se déroule bien jusqu'à MsgBox, après dès validation le programme par dans une boucle de plusieurs minutes puis affiche :

Microfoft Excel attend la fin de l’exécution d’une action OLE d’une autre application.

Si j’annule, plus la main sur le programme, donc Ctrl/alt/suppr pour arrêter. Si je fait OK c'est reparti pour un tour.

Après il y a un affichage qui dit :

Microsoft n’est pas le programmes que vous utilisé habitul….sélectionner les type des fichiers que Word doit ouvrir.

J’ai regardé dans démarrer. Option ….. tous me semble correcte
VB:
Set WordDoc = WordApp.Documents.Open(ThisWorkbook.Path & "\" & "BL vierge")   'A Modifier si on veut un 
                                               
MsgBox NomDoc & "" & WordApp

WordDoc.SaveAs NomDoc ' On l'enregistre

y-a-t-il une piste de recherche, là je désespère. Je vais prendre l’aire une petite heure avant de faire une overdose.

Cordialement

PS : si je lance la procédure (module1) : Sub ouverture_doc_vierge() le fichier word s'ouvre bien ?
 

herve62

XLDnaute Barbatruc
Supporter XLD
Bonsoir
Comme je viens de te dire , maintenant avec 2019 remet des DOCX au lieu de DOC dans le vba
mais renomme aussi ton fichier squelette word concerné !! (BL)
Supprime aussi ton msgbox qui ne donne pas d'info
Et comme j'ai dit , avec 2019 inconnu pour moi je ne sais pas sa réaction vis à vis d'interprétation de code avec de vieilles versions ? donc je pense que tu as enregistré en xlsm maintenant ?
A verifier coché dans VB > outils > references
les objects library
MS office 19.0 ( je suis resté à 14)
MS word ..idem
ensuite aucune raison que cela ne fonctionne pas , chez moi avec 14.0 (2010) et en vba fichier docx tout est nickel
 

jeanmi

XLDnaute Occasionnel
Bonjour,

j'ai tous fais MS office est en 16, mais ça par dans un boucle et le programme est bloqué. donc Ctrl+alt+suppr et redémarrage PC, pour remettre tous en place.
Pas facile les manipulation entre word et excel : pour moi
 

jeanmi

XLDnaute Occasionnel
bonjour herve62, bonjour à tous

Ne pouvant réussir à faire fonctionner le code VBA avec office 2019, je viens d'essayer de le faire avec office 2010 et là : miracle tous marche bien
je vais demander à mon fils d'essayer sur son pc avec office 2019 afin de voir si c'est mon pc ou office 2019 qui bloc le code.

Donc ça marche bien avec office 2010.

je vais essayer de comprendre ton code pour pouvoir remplir les autres champs aussi.

Ce que j'espère arrivé à faire :

a) La cellule Excel A4 (C/D/E/F/G/H/I/J) passent dans le champs formulaire Word Texte1 (texte2, etc), et ainsi de suite… si la cellule A4 est non vide ou comporte un x (au choix, le plus simple à mettre en œuvre)
b) si dans la cellule Excel N4, si il y a une donnée, passe dans Word CaseACocher1, donc, case à cocher et ainsi de suit pour les autres lignes
c) a chaque fois le fichier est sauvegardé avec comme nom celui des cellule I+C de la ligne traitée.
d) la procédure continue pour toutes les lignes Anon vide

si j'ai bien compris il faut aussi que dans Word je paramètre les champs ou il y aura les copie en texte 1... ?
faut-il aussi référencer Excel dans option de VBA au niveau de Word ?

Merci pour le réponse.

Cordialement
 

Discussions similaires

Réponses
4
Affichages
526
Réponses
15
Affichages
1 K
Réponses
27
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…