Macro VBA Word 2007: suppression de marques d [Résolu/Fermé]

Signaler
Messages postés
377
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 juillet 2012
-
Messages postés
16648
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
-
Salut,

Je voudrais un petit script VBA pour supprimer les marques de paragraphes en fin de ligne précédées uniquement de toutes lettres minuscule non suivie d'un point (et/ou d'un espace) puis d'une lettre minuscule et les remplacer simplement par un espace. Il s'agit d'un document PDF que j'ai copié collé intégralement dans Word 2007, alors le renvoi à la ligne automatique est remplacé par des marques de paragraphe. Or j'ai plus de 80 pages de plus de 30 ligne à traiter. ^^

Voici la démarche:
-se rendre en fin de ligne
-vérifier si la lettre précédente EST une minuscule et N'EST PAS un point
-vérifier si la lettre suivante EST un minuscule
-si oui: remplacer par un espace
-si non: aller à la marque de paragraphe.

Sinon si vous avez un logiciel de conversion PDF à Word gratuit qui assure le renvoi à la ligne automatique sans marque de paragraphe (comme dans la saisie dans Word), n'hésitez pas à me le conseiller.

Merci d'avance à tous les membres qui prendront le temps de me répondre

6 réponses

Messages postés
16648
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
9 835
Bonjour,

J'ai corrigé la macro, il y avait des \ qui avaient sauté (mangés par mon dernier CMS !...).

Cela dit, je ne suis pas certaine que ça réponde à ta demande.
De plus la macro est pratique si on en fait souvent, sinon, un simple RR fait l'affaire. Sauf que ce RR en particulier est tellement compliqué qu'il est difficilement reproductible à la main ! :D

Dans ton cas, s'il s'agit réellement de marques de paragraphe (¶) ?
Et je ne comprends pas l'histoire de la minuscule avant... Ne faut-il pas simplement vérifier que ce n'est pas un point ?? ou simplement que ce n'est pas une minuscule après la marque de paragraphe ?

Sinon, pour mettre un raccourci à la macro :
- Bouton Office, Options Word
- Personnaliser
- tout en bas : Raccourcis clavier => Personnaliser
- Catégorie : macros
- Sélection de la macro et attribution du raccourci.

m@rina
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

Messages postés
23585
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
6 421
Bonjour,

Sur le site faqword.com une macro qui pourrait t'intéresser :
http://www.faqword.com/...

eric
Messages postés
16648
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
9 835
Bonjour,

C'est corrigé. Je n'avais pas vu qu'anacoluthe avait compliqué à souhait en séparant chaque item par un point-virgule, ce qui fait que le point virgule était pris en compte.
Cette macro en fait remplace tous les retours paragraphes par un espace sauf s'ils sont précédés par une double ponctuation.

Sinon, pour simplement remplacer tous les retours paragraphes après les caractères minuscules par un espace, voici un RR :

Recherche : ([a-z])(^13)
Remplace par : \1
(nb : le \1 est suivi d'un espace)

Et pour tout savoir sur les RR, c 'est ici :
http://faqword.com/...

m@rina
Messages postés
377
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 juillet 2012
95
Merci, c'est exactement ce que je recherchais. Cependant j'ai deux problèmes:
- deux messages d'erreur (55..) et une autre de compilation qui me demande un débogage.
- étant donné que j'enregistrais mes macros en passant par l'onglet développeur, je définissais d'abord un raccourci clavier avant d'enregistrer mes macros. Mais là, avec la macro par ton EXCELLENT LIEN, je colle le script, je peux l'exécuter mais je ne sais pas comment définir de raccourci clavier.
Voilà, si t'as d'autres choses... :) Encore merci!
Messages postés
377
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 juillet 2012
95
Merci je vais patienter!
Messages postés
23585
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
23 octobre 2020
6 421
Bonsoir,

Je ne suis pas un pro de word, désolé.
Mais dans l'aide recherche 'personnaliser clavier' et tu trouveras ton bonheur pour affecter un raccourci clavier aux macros.
Pour le reste attend qcq'un de plus au fait des macros word...

eric
Messages postés
377
Date d'inscription
lundi 21 février 2011
Statut
Membre
Dernière intervention
21 juillet 2012
95
Merci M@rina! ton nouveau script marche nickel! Merci aussi pour le raccourci clavier tout est OK ;)

Seulement deux défaut mineurs:
- tu devrais inclure aussi les virgules et les points-virgules
exemple:
cette décision a acquis l'autorité de la chose jugée,¶
l'inscription de l'hypothèque qui en résulte est requise

- ensuite, ne pas remplacer par un espace si la lettre qui suit la marque de paragraphe est une Majuscule
exemple:
Chapitre 1: conditions de forme et de fond¶
Article 1: conditions de forme...


Sinon à part ça tout est nickel. Encore merci, tu es vraiment une pro! n'hésite pas à m'envoyer par MP ou à poster des liens pour apprendre VBA facilement avec exemples et illustrations à l'appui.

Dis-moi, qu'est-ce que tu entends par: "De plus la macro est pratique si on en fait souvent, sinon, un simple RR fait l'affaire. Sauf que ce RR en particulier est tellement compliqué qu'il est difficilement reproductible à la main !" ?

Oui il s'agissait réellement de marque de paragraphe et pas d'autre chose... pour la minuscule avant, tu as raison, c'est superflu; par contre les virgules et la majuscule après...
En tout cas merci pour tout!