Macros dans Word

Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012 - 27 avril 2010 à 02:33
Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012 - 30 avril 2010 à 13:50
Bonjour à tous,

J'ai besoin de faire une tâche répétitive dans word, j'ai appris qu'en faisant des macros (qui je crois sont en Visual Basic) on pouvait faire ça facilement... mais je n'y connais strictement rien alors j'aimerais savoir si qn pourrait m'aider. Je précise que j'ai Microsoft Office Word 2003 (et mon pc marche avec Vista).

La tâche est la suivante : il faut changer l'ordre de certaines lignes de texte qui commencent par le même texte, à l'intérieur de blocs (j'ai sauté une ligne entre les blocs pour la lisibilité). Par exemple:

\xv aaaaaaaa
\ph bbbbbbbbbbb
\xn cccccccccccc
\so ddddddddddddd

\xv aaaaaaaa
\ph bbbbbbbbbbb
\xn cccccccccccc
\so ddddddddddddd

\xv aaaaaaaa
\ph bbbbbbbbbbb
\xn cccccccccccc
\so ddddddddddddd


doit devenir :


\ph bbbbbbbbbbbb
\so dddddddddddd
\xv aaaaaaaaaaaaaa
\xn ccccccccccccc

\ph bbbbbbbbbbbb
\so dddddddddddd
\xv aaaaaaaaaaaaaa
\xn ccccccccccccc

\ph bbbbbbbbbbbb
\so dddddddddddd
\xv aaaaaaaaaaaaaa
\xn ccccccccccccc



Pouvez-vous me dire quel code VB il faut utiliser dans Word pour obtenir ce que je veux?
Merci beaucoup d'avance :-)

6 réponses

cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
27 avril 2010 à 11:05
bonjour

Il faut utiliser l'enregistreur de macros le code sera tout fait et enregistrer ce qu'il y a à faire sur un série de 4 lignes
Outils/ Macro /créer

Selectionner la 2ème ligne et la remonter
Selectionner la 4 ème ligne et la remonter
Déscendre sur le bloc suivant
Arreter l'enregistrement de la macro

Attribuer une touche de raccourcis à la macro
Et lancer la macro par 3 appuis successifs sur la combinaison de touche associée à la macro
0
Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012
27 avril 2010 à 12:44
Salut

Merci de ta réponse, mais j'ai déjà essayé et ça marche pas, apparemment le programme comprend pas que c'est les lignes qui commencent par \xv, \ph etc que je veux déplacer dans un ordre spécial. Quand je lance la macro il me déplace toutes les lignes sans se soucier des caractères par lesquels elle commence ...

Alors je sais pas comment faire...
0
cs_loulou69 Messages postés 672 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 2 juin 2016 1
28 avril 2010 à 09:20
si au lieu d'aller chercher la deuxième ligne c'est chercher le texte : c'est la même chose avec l'enregistreur de macro, faire

édition recherche
taper \xv dans le champ de recherche ,
lancer la recherche
revenir en début de la ligne xv,
sélectionner toute la ligne,
couper la ligne,
se déplacer au point d'insertion
coller

arrêter l'enregistrement
0
Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012
28 avril 2010 à 14:54
Ok, merci. Mais avec ça, comment faire pour que la macro s'exécute dans tout le document, et que je sois pas obligé de retourner dans le menu macro et de lui dire de l'exécuter pour chaque occurrence de \xv etc ?

Merci d'avance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012
28 avril 2010 à 15:11
Y a un autre truc : il ne faut déplacer les \xv etc que quand ils se trouvent dans un bloc avec les éléments suivants en début de ligne:

\xv
\ph
\xn
\so

Les \xv etc qui ne sont pas dans un bloc comme ça, il ne faut pas les déplacer...
0
Pwyll2 Messages postés 8 Date d'inscription mardi 27 avril 2010 Statut Membre Dernière intervention 27 mars 2012
30 avril 2010 à 13:50
Qn peut-il m'aider? Merciiiiiii
0
Rejoignez-nous