|
Publicité ' | ||||||||||||||||||||||
|
|
#1 | ||
|
Membre habitué
![]() Julien Automaticien / Technicien d'étude nucléaire Inscription : novembre 2010 Messages : 115 ![]() |
Tout d'abord, merci au site pour ses FAQ et tuto en VBA Word, moi qui habitué au macro Excel, ca m'a énormément aidé !
![]() Je pilote Word depuis Excel J'ouvre un document word et je dois remplacer plusieurs mots clefs. Code :
J'ai affecté "a" à Tampon juste WordParagraph.Range.Text = Tampon et là ça marchait ! Je me suis dit, je suis gêné par un retour à la ligne, alors j'ai supprimé le dernier caractère de Tampon, et ça marchait, mais ça faisait des trucs bizarres dans le document, car je dois avoir tout un tas de paragraphe avec juste un retour à la ligne. Alors j'ai dis que je supprimerais je retour à la ligne que si tampon fait plus que 1 caractère, et ça m'a collé les 2 premiers paragraphes (j'ai l'impression) et après, ça recommençait à tourner en boucle sur le premier paragraphe. Please Help Me ! Et Joyeux Week-End Ps : Dim Tampon as String n'est pas une référence salace, juste un pure hasard (sisi, je le jure)
|
||
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 321 ![]() |
Salut,
Logique, lorsque tu changes le paragraphe, tu changes la collection et tu entres dans une boucle sans fin. Soit tu comptes les paragraphes et tu les atteints par leur index, soit tu traites le contenu d'une autre manière. Code :
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#3 |
|
Membre habitué
![]() Julien Automaticien / Technicien d'étude nucléaire Inscription : novembre 2010 Messages : 115 ![]() |
Merci de la réponse. Je mets ça en pratique lundi matin. Ca devrais marcher.
Ce que je ne comprend pas, c'est quelle collection change ! Selon moi, je parcoure les objets Paragraph de la collection Paragraphs de mon document WordDoc. Et ce qui me laisse perplexe, c'est que ça marche lorsque je modifie par exemple le variable Tampon. (je laisse le même code je rajoutai juste une ligne pour réaffecter Tampon avant de le réaffecter au texte du paragraphe). Je voudrais bien comprendre ! En tout cas merci beaucoup !!! |
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 321 ![]() |
Salut,
Elle chane avec ce morceau de code : WordParagraph.Range.Text = Tampon Essaie de faire un len du contenu d'un paragraphe, tu verras que le paragraphe contient 1 caractère de plus que ce que tu as comme texte, c'est la marque de paragraphe et affecter un nouveau texte à tous le paragraphe le modifie et modifie par la même occasion la collection.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
|
|
#5 | ||
|
Membre habitué
![]() Julien Automaticien / Technicien d'étude nucléaire Inscription : novembre 2010 Messages : 115 ![]() |
Lundi matin et un café plus tard
Je code ça : Code :
Je cherche encore, mais je crois avoir toujours besoin d'aide ! |
||
|
|
00
|
|
|
#6 |
|
Membre habitué
![]() Julien Automaticien / Technicien d'étude nucléaire Inscription : novembre 2010 Messages : 115 ![]() |
J'ai rajouté du code faisant repartir le parcours du document depuis 0 si une modif est faite. 1ère modif, la macro repart bien au début mais se rebloque là où la première modif à été faite.
J'ai oublié de préciser que la plupart des paragraphes sont écrits dans des tableaux. Peut-être que ça à un rapport, peut-être pas. Je pense plutôt à un caractère de fin de paragraphe qui saute ou qqch comme ca, mais je n'y touche pas théoriquement. Je ne comprends pas trop ... |
|
|
00
|
|
|
#7 | |||
|
Membre habitué
![]() Julien Automaticien / Technicien d'étude nucléaire Inscription : novembre 2010 Messages : 115 ![]() |
Voici une autre solution.
Je me suis souvenu d'un outil bien sympathique qui est l'enregistreur de macro. Je me suis dis Citation:
Code :
|
|||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com