VBA supprimer des mots

Le
Daniel.C
Bonjour.
Je me positionne sur un signet et je veux supprimer les mots jusqu'à la
prochaine marque de paragraphe.
La suppression fonctionne. J'utilise dans une boucle :

Selection.Expand wdWord
Selection.Delete

Mais comment détecter que la sélection est une marque de paragraphe ?

Merci d'avance.
Daniel
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Anacoluthe
Le #1784757
Bonjour !

'Daniel.C' nous a écrit ...
Je me positionne sur un signet et je veux supprimer les mots jusqu'à la
prochaine marque de paragraphe.
La suppression fonctionne. J'utilise dans une boucle :
Selection.Expand wdWord
Selection.Delete
Mais comment détecter que la sélection est une marque de paragraphe ?


Pourquoi ne pas utiliser
Selection.Expand wdParagraph
?

Anacoluthe
« L’art du mot ne connaît pas de limites. »
- Ivan GONTCHAROV

Daniel.C
Le #1784755
"Anacoluthe"
Bonjour !

'Daniel.C' nous a écrit ...
Je me positionne sur un signet et je veux supprimer les mots jusqu'à la
prochaine marque de paragraphe.
La suppression fonctionne. J'utilise dans une boucle :
Selection.Expand wdWord
Selection.Delete
Mais comment détecter que la sélection est une marque de paragraphe ?


Pourquoi ne pas utiliser
Selection.Expand wdParagraph
?



Parce que, si je fais Selection.Delete, le paragraphe est supprimé, et mon
signet avec.
Daniel


Geo
Le #1784753

Parce que, si je fais Selection.Delete, le paragraphe est supprimé, et mon signet avec.
Daniel


Il est où votre signet ?

Sinon pour savoir s'il y a une marque de paragraphe dans votre
sélection :
If InStr(1, Selection.Text, vbCr) > 0 Then
' marque de paragraphe

Else
' pas de marque de paragraphe

End If

Si vous voulez savoir si le dernier caractère est une marque de
paragraphe il vaudrait mieux utiliser la recherche inverse et tester
sur la valeur 1.

--
A+

Anacoluthe
Le #1784745
Bonjour !

'Daniel.C' nous a écrit ...
Parce que, si je fais Selection.Delete, le paragraphe est supprimé, et mon
signet avec.


L'instruction ( UNE seule) suivante supprime tout le texte qui suit
le signet Toto jusqu'à la fin du paragraphe contenant ce signet
sans toucher au signet ni au saut de paragraphe :

ActiveDocument.Range(ActiveDocument.Bookmarks("Toto").Range.End, _
ActiveDocument.Bookmarks("Toto").Range.Paragraphs(1).Range.End - 1).Delete

Par principe zen je n'utilise JAMAIS l'objet Selection dans une macro :-)

Anacoluthe
« La vraie question est : pourquoi sélectionner?
Et je ne connais pas la réponse. »
- Albert JACQUARD

Daniel.C
Le #1784736
Merci à tous deux. Je mets en application.
Daniel
"Daniel.C" %

"Anacoluthe" news:
Bonjour !

'Daniel.C' nous a écrit ...
Je me positionne sur un signet et je veux supprimer les mots jusqu'à la
prochaine marque de paragraphe.
La suppression fonctionne. J'utilise dans une boucle :
Selection.Expand wdWord
Selection.Delete
Mais comment détecter que la sélection est une marque de paragraphe ?


Pourquoi ne pas utiliser
Selection.Expand wdParagraph
?



Parce que, si je fais Selection.Delete, le paragraphe est supprimé, et mon
signet avec.
Daniel





Daniel.C
Le #1784734
Par principe zen je n'utilise JAMAIS l'objet Selection dans une macro :-)



Merci du tuyau, je suis novice et je retravaille ce que me donne
l'enregistreur.
Daniel

Daniel.C
Le #1784733
Ca fonctionne SAUF, s'il n'y a rien entre le signet et la marque de
paragraphe (c'est une possibilité, je ne l'avais pas dit, je le reconnais)
Daniel
"Anacoluthe" uk%
Bonjour !

'Daniel.C' nous a écrit ...
Parce que, si je fais Selection.Delete, le paragraphe est supprimé, et
mon signet avec.


L'instruction ( UNE seule) suivante supprime tout le texte qui suit
le signet Toto jusqu'à la fin du paragraphe contenant ce signet
sans toucher au signet ni au saut de paragraphe :

ActiveDocument.Range(ActiveDocument.Bookmarks("Toto").Range.End, _
ActiveDocument.Bookmarks("Toto").Range.Paragraphs(1).Range.End - 1).Delete

Par principe zen je n'utilise JAMAIS l'objet Selection dans une macro :-)

Anacoluthe
« La vraie question est : pourquoi sélectionner?
Et je ne connais pas la réponse. »
- Albert JACQUARD



Anacoluthe
Le #1784720
Bonjour !

'Daniel.C' nous a écrit ...
Ca fonctionne SAUF, s'il n'y a rien entre le signet et la marque de
paragraphe (c'est une possibilité, je ne l'avais pas dit, je le reconnais)


Testez la longueur (.Characters.Count) du Range entre le signet et la fin de §
et supprimez-le que si sa longueur est > 1 sinon effectivement cette
instruction va supprimer le saut de paragraphe lui-même...

Anacoluthe
« Fais un petit saut l'alouette, l'alouette
Fais un petit saut l'alouette comme il faut »
- Comptine

Daniel.C
Le #1784717
"Anacoluthe"
Bonjour !

'Daniel.C' nous a écrit ...
Ca fonctionne SAUF, s'il n'y a rien entre le signet et la marque de
paragraphe (c'est une possibilité, je ne l'avais pas dit, je le
reconnais)


Testez la longueur (.Characters.Count) du Range entre le signet et la fin
de §
et supprimez-le que si sa longueur est > 1 sinon effectivement cette
instruction va supprimer le saut de paragraphe lui-même...

Anacoluthe
« Fais un petit saut l'alouette, l'alouette
Fais un petit saut l'alouette comme il faut »
- Comptine


Cette fois, c'est parfait. Encore merci.
Daniel


AB
Le #1786070
Hello Daniel,
Tu te mets à Word aussi ?
Après avoir plusieurs fois bénéficié de ta compétence et de ta gentillesse
sur Excel, peut-être pourrai-je t'être utile à mon tour sur Word ?
Encore que..., vu dans quoi tu te lances avec VBA, je crains que ce soit toi
qui nous dépannes bientôt !
Amitiés
André

"Daniel.C"

"Anacoluthe" news:
Bonjour !

'Daniel.C' nous a écrit ...
Ca fonctionne SAUF, s'il n'y a rien entre le signet et la marque de
paragraphe (c'est une possibilité, je ne l'avais pas dit, je le
reconnais)


Testez la longueur (.Characters.Count) du Range entre le signet et la fin
de §
et supprimez-le que si sa longueur est > 1 sinon effectivement cette
instruction va supprimer le saut de paragraphe lui-même...

Anacoluthe
« Fais un petit saut l'alouette, l'alouette
Fais un petit saut l'alouette comme il faut »
- Comptine


Cette fois, c'est parfait. Encore merci.
Daniel





Publicité
Poster une réponse
Anonyme