bonjour
Boucler sur les paragraphes d'un document Word et les supprimer s'ils débutent par le mot "Test"
*************************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| Option Compare Text
Sub supprimerParagraphe()
Dim WordApp As Word.Application
Dim WordDoc As Word.document
Dim cible As Paragraph
Set WordApp = New Word.Application
WordApp.Visible = True
Set WordDoc = WordApp.Documents.Open(ThisWorkbook.Path & "\Doc1.doc")
WordDoc.bookmarks("\StartOfDoc").Select
For Each cible In WordDoc.Paragraphs
cible.Range.Select
If Trim(cible.Range.Words(1)) = "Test" Then cible.Range.Delete
Next cible
End Sub |
Un autre exemple qui supprime les paragraphes de façon conditionnelle
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| Sub supprimerParagraphes_Conditionnel()
'boucle sur les 3 premiers paragraphes du document Word :
'si la cellule A1<>1 alors suppression du paragraphe 1
'si la cellule A2<>1 alors suppression du paragraphe 2
'si la cellule A3<>1 alors suppression du paragraphe 3
Dim WordApp As Word.Application
Dim WordDoc As Word.Document
Dim i As Integer
Set WordApp = CreateObject("Word.Application")
WordApp.Visible = True
Set WordDoc = WordApp.Documents.Open("C:\monDocument.doc")
For i = 3 To 1 Step -1
If Cells(i, 1) <> 1 Then _
WordDoc.Paragraphs.Item(i).Range.Delete
Next i
End Sub |
Extraire les phrases / lignes de plusieurs documents Word
************************************************
Chaque ligne est importée dans une colonne différente du classeur
la macro Excel boucle sur tous les documents Word (fermés) pour
ouvrir les fichiers
transferer chaque phrase/ligne dans une colonne differente du classeur
puis refermer le document
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
| Sub importLignesDocumentWord()
Dim Fichier As String, Direction As String
Dim wordApp As Word.Application
Dim wordDoc As Word.Document
Dim i As Byte
Dim j As Integer
Application.ScreenUpdating = False
Direction = ThisWorkbook.Path
Fichier = Dir(Direction & "\*.doc")
Do While Fichier <> "" 'boucle sur tous les fichiers .doc du repertoire
Set wordApp = CreateObject("Word.Application")
wordApp.Visible = False
Set wordDoc = wordApp.Documents.Open(Direction & "\" & Fichier) 'ouverture documents word
j = j + 1
For i = 1 To wordDoc.Sentences.Count 'boucle sur les phrases/lignes de chaque document
Cells(j, i) = _
Application.WorksheetFunction.Substitute(wordDoc.Sentences(i).Text, Chr(13), "")
Next i
wordDoc.Close False 'fermeture documents word
wordApp.Quit
Set wordDoc = Nothing
Set wordApp = Nothing
Fichier = Dir
Loop
End Sub |
Partager