Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1192 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

   (Résolu) VBA Word et suppression de marques de paragraphe (lignes)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

(Résolu) VBA Word et suppression de marques de paragraphe (lignes)

n°2453113
philm74
Tester
Posté le 25-08-2023 à 21:47:02  profilanswer
 

Bonsoir,
J'ai un fichier avec de multiples (1000 environ) images au dessus de lesquelles se trouvent des lignes vides (marques de paragraphes je crois techniquement)
Je cherche à l'aide d'une macro sous Word à supprimer en masse la ou les  lignes vides?
 
Donc avant les images il y a sauf erreur:
un espace suivi d'un retour à la ligne manuel suivi d'une marque de paragraphe ^l^p il faudrait enlever l'espace et le retour à la ligne manuel ^l.
 
dans le même fichier avant le texte Blasonnement et Blason il y a :
un retour à la ligne manuel suivi d'une marque de paragraphe il faudrait les enlever.
 
C'est pour celà que je pensais à une macro pour le faire en masse en étant sur que celà ne touche que les parties concernées.
 
Je suis preneur de toutes vos idées de codes.
 
Je n'ai peut être pas été clair dans les explications ;-(  et je peux joindre joint un fichier exemple (un extrait d'un très lourd fichier) pour comprendre visuellement éventuellement si je ne fais pas d'erreur dans ce que je décris en caractères spéciaux.
Je vous remercie par avance,
Philippe


Message édité par philm74 le 28-08-2023 à 08:02:22
mood
Publicité
Posté le 25-08-2023 à 21:47:02  profilanswer
 

n°2453152
philm74
Tester
Posté le 27-08-2023 à 09:25:32  profilanswer
 

J'ai adapté une macro trouvé en ligne comme ceci pour chercher et remplacer mon texte:
 
Selection.Find.ClearFormatting
    Selection.Find.Style = ActiveDocument.Styles("Normal" )
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "^l^pBlasonnement"
        .Replacement.Text = "Blasonnement"
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
 
ça fonctionne mais quand il remplace la chaine trouvée "Blasonnement" il l'a réécrit mais pas dans sa couleur d'origine...elle est noire?
Comment puis-je faire pour la réécrire à l'identique?
 
Par ailleur il me faudrait également presque la même chose mais en cherchant les ^l^p devant les images.
Merci

n°2453167
philm74
Tester
Posté le 28-08-2023 à 08:00:22  profilanswer
 

Bonjour à tous,
En cherchant un peu,
Voilà ce que j'ai modifié et ça répond exactement à ce que je voulais pour la suppression en gardant le formatage du texte recherché pour la partie contenant du texte.
Je vais reposter pour les Images car là je sèche.
 
Sub supsautligne()
 
Selection.Find.ClearFormatting
Selection.Find.Style = ActiveDocument.Styles("Normal" )
Selection.Find.Replacement.ClearFormatting
Selection.Find.Replacement.Font.Name = "Times New Roman"
Selection.Find.Replacement.Font.Size = 9
Selection.Find.Replacement.Font.Bold = True
Selection.Find.Replacement.Font.Color = RGB(128, 0, 0)
With Selection.Find
.Text = "^p^l^pBlasonnement"
.Replacement.Text = "^pBlasonnement"
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
 
End With
Selection.Find.Execute Replace:=wdReplaceAll


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

   (Résolu) VBA Word et suppression de marques de paragraphe (lignes)

 

Sujets relatifs
Probleme copier/coller entre Excel et WordModifier du code source VBA à la volée
VBA Excel : surlignerMettre en gras des caractères dans un autre document Word
[VBA] Test cell vide ne fonctionne plusmacro word pour intervertir les paragraphes deux par deux
[VBA] Fonction .Min[VBA] code outlook format date
[VBA Calc] Traiter le texte d'une celluleCode range VBA
Plus de sujets relatifs à : (Résolu) VBA Word et suppression de marques de paragraphe (lignes)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR