|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
Bonjour à tous,
Je souhaite savoir s'il est possible de créer, à partir d'une macro dans une feuille excel, un fichier Word dont le nom est une incrémentation des noms de fichiers déjà présent dans le repertoire d'enregistrement. Mon idée est de créer une macro sous excel. Quand on clique sur un bouton du userform, on donne l'instruction d'ouvrir un Modèle Word préparamétré (.dotx). Là, je vois bien une macro Word qui défini le nom du nouveau document et qui l'enregistre au bon endroit (toujours le même) Le modèle word s'enregistrera alors automatiquement sous le nom KMiii-XXXX, avec iii un nombre et XXX l'année de création. Le nombre iii doit être en fonction du dernier nombre apparut dans le repertoir d'enregistrement. Par exemple, si le répertoire contient KM001-2012 KM002-2012 KM003-2012 alors le fichier à créer sera enregistré sous le nom KM004-2012 Encore plus difficile : il faudrait que le fichier Excel récupère le chemin d'accès du fichier word qui vient d'être créé ! ![]() Pouvez-vous me dire si c'est faisable, et si oui pouvez vous m'aiguiller sur le code associé? Merci d'avance |
|
|
00
|
|
|
#2 | ||||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Voici un début de réponse avec une fonction qui donne le nom de fichier disponible dans un répertoire.
Le fichier cherché et sous forme de PréfixeXXX-YYYY.docx Code :
Code :
__________________
Cordialement. |
||||
|
|
10
|
|
|
#3 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
Merci mercatog pour ta réponse rapide !
Cependant, lorsque j'envoie ce code, la msgbox me renvoie systématiquement KM001-2012 Saurais-tu pourquoi? |
|
|
00
|
|
|
#4 |
![]() ![]() |
ben il existe ce fichier "KM001-2012.docx" ?
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
|
21
|
|
|
#5 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
Si le repertoire comporte
KM001-2012.docx KM002-2012.docx KM003-2012.docx KM004-2012.docx la macro devrait renvoyer KM005-2012 Or ici il me renvoie KM001-2012 ça marche chez vous? C'est peut-être moi qui ai mal nommé mes fichiers, mais ça n'a pas l'air d'etre ça. |
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
As tu adapté le chemin?
"C:\Users\user\Desktop\"
__________________
Cordialement. |
|
|
10
|
|
|
#7 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
Désolé, j'avais oublié un \ à la fin de mon chemin !
Merci beaucoup. ![]() Donc on a une partie du code OK. Maintenant pourriez vous m'aiguiller sur la façon de récupérer le nom du docx (qu'on vient de créer) vers la macro d'excel ? J'avais dans l'idée de récupérer l'adresse du docx en cours (c'est à dire celui dont la page est ouverte). On peut faire ça, ou y-a-t-il plus simple? |
|
|
00
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Il faudra être précis: Tu veux piloter Word à partir d'Excel.
Les codes sont dans Excel seulement ou aussi dans ton document Word.
__________________
Cordialement. |
|
|
10
|
|
|
#9 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
J'utilise en tache principale un fichier excel, qui gere de nombreux documents.
Sur ce fichier, j'ai une macro avec une userform qui comportera un bouton "Nouveau Rapport". Je souhaite que quand l'utilisateur appuie sur Nouveau Rapport, un nouveau document word apparaisse, paramétré par un modèle de document. Grace au code que tu viens de me donner, je pourrai écrire un code pour enregistrer automatiquement ce nouveau rapport avec le bon nom (incrémenté). C'est ce nom (et son chemin) que je veux récupérer dans mon fichier excel, afin de pouvoir renseigner ma pseudo base de données sur la création de ce nouveau document, devant lequel on pourra mettre des informations à propos du document (observations, sujet, validité, etc...) En fin de compte, chaque ligne de la feuille excel comportera un lien vers un document, en regard desquels seront indiquées de nombreuses informations. Je sais, c'est pas vraiment claire, donc n'hésites pas à me demander plus de détails. |
|
|
00
|
|
|
#10 |
![]() ![]() |
Montre nous le code que tu utilise pour créer ton fichier word.
__________________
page à bbil : dernières entrées : Débuter en VB6 Mes contributions en téléchargement Les pages VB : FAQs, Tutoriels VB, Outils , Sources, WIKI Impératif "A LIRE AVANT DE POSTER"
|
|
11
|
|
|
#11 | ||
|
Expert Confirmé Sénior
![]() Inscription : juillet 2008 Messages : 5 848 ![]() |
Exemple d'ouverture et d'enregistrement de document Word à partir d'Excel
Code :
__________________
Cordialement. |
||
|
|
10
|
|
|
#12 |
|
Invité de passage
![]() Inscription : mars 2011 Messages : 36 ![]() |
ça marche très bien !
Merci beaucoup mercatog !
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com