OVH Cloud OVH Cloud

Macro WORD

2 réponses
Avatar
Bertrand.P
Je cherche une instruction ou une méthode pour connaître le nombre de lignes
d'un document Word
Cette instruction sera intégré dans une macro afin de scruter toutes les
lignes et de modifier leur contenu ( but : remettre la couleur des
commentaires d'un programme source de VB6 copié sous Word).

2 réponses

Avatar
Clément Marcotte
Je cherche une instruction ou une méthode pour connaître le nombre
de lignes

d'un document Word


nombrelignes ActiveDocument.BuiltInDocumentProperties(wdPropertyLines)

Cette instruction sera intégré dans une macro afin de scruter toutes
les

lignes et de modifier leur contenu


De toutes façons, même si tu connais le nombre de lignes, Il n'y a
aucune possibilité de boucler ligne par ligne d'un document Word

Tu peux toujours aller voir cela:

http://www.gaboly.com/VBA/MiseEnFormeVBAWord.html

Avatar
Jean-Guy Marcil
Clément Marcotte was telling us:
Clément Marcotte nous racontait que :

Je cherche une instruction ou une méthode pour connaître le nombre
de lignes d'un document Word


nombrelignes > ActiveDocument.BuiltInDocumentProperties(wdPropertyLines)

Cette instruction sera intégré dans une macro afin de scruter toutes
les lignes et de modifier leur contenu


De toutes façons, même si tu connais le nombre de lignes, Il n'y a
aucune possibilité de boucler ligne par ligne d'un document Word


Depuis Word 2003, pas tout a fait....
Amuses-toi avec ce code:

'_______________________________________
Sub ManipuleLignes()

Dim MyPane As Pane
Dim MyPage As Page
Dim PageCount As Long
Dim MyRect As Rectangle
Dim MyLine As Line
Dim LineRange As Range

Dim LineCount As Long
Dim i As Long
Dim j As Long

LineCount = 0
i = 0

Set MyPane = ActiveWindow.ActivePane
With MyPane
PageCount = .Pages.Count
For i = 1 To PageCount
j = 0
Set MyPage = .Pages(i)
Set MyRect = MyPage.Rectangles(1)
With MyRect
LineCount = LineCount + .Lines.Count
For j = 1 To .Lines.Count
Set MyLine = .Lines(j)
With MyLine
Set LineRange = .Range
'Do something with it, call a function?
End With
Next
End With
Next
End With

MsgBox "Il y a " & LineCount & " lignes dans le document."

End Sub
'_______________________________________

Remarques que si tu as des en-têtes, pieds de page, graphiques, zones de
texte, etc., la collection Recatangle devient un peu plus compliquée à
gérer, mais c'est faisable!


--
Salut!
_______________________________________
Jean-Guy Marcil - Word MVP

Word MVP site: http://www.word.mvps.org