Trouver un mot dans un fichier word et supprimer la ligne ou il se trouve depuis Exce

zephir94

XLDnaute Impliqué
Bonjour à tous,

je voudrais rechercher un mot dans un fichier Word déjà ouvert ,se mot ne pourra être que 4 fois maximun dans le document.
j'initialise le l'ouverture du fichier word par :leDoc
J'ai donc écris ce code :

Code:
set leDoc =traitementTexte.documents.open(ActiveWorkbook.Path &"/essai.doc") ' ça marche bien le fichier Word s'ouvre 
for i = 1 to 4 ' vue que le mot ne pourras être présent que 4 fois
leDoc.content.Find.Execute findtext:="monmot", Forward=true
leDoc.Selection.Expand unit:=wdParagraph ' il me trouve en paragraphe 4 le mot en pas à pas
leDoc.Selection.Range.Delete ' il n'efface pas la ligne !
Next i ' il ne boucle pas à deux et passe à la suite  de la macro !

Merci par avance pour vos aides
 
Dernière édition:

zephir94

XLDnaute Impliqué
Re : Trouver un mot dans un fichier word et supprimer la ligne ou il se trouve

Bonjour à tous, je tourne en rond mais hélas sans succès !

j'ai essayé :

Code:
 For ii = 1 To 4
   Dim txt As String
    Dim traitementTexte As Word.Application
    Set traitementTexte = New Word.Application
 traitementTexte.Visible = True
  Dim leDoc As Document
    Set leDoc = traitementTexte.Documents.Open(ActiveWorkbook.Path & "/test.doc")
With leDoc
leDoc.Content.Find.Execute findtext:="scoubi"
 
If findtext = "scoubi" Then
     leDoc.findtext.Select
      leDoc.Selection.Delete
Else
End If
 End With
 Next ii

puis :

Code:
Dim txt As String
    Dim traitementTexte As Word.Application
    Set traitementTexte = New Word.Application
  traitementTexte.Visible = True
  Dim leDoc As Document
    Set leDoc = traitementTexte.Documents.Open(ActiveWorkbook.Path & "/test.doc")
 For ii = 1 To 4
 With leDoc
leDoc.Content.Find.Execute findtext:="scoubi"
leDoc.Selection.Expand unit:=wdParagraph
If ((leDoc.Selection.Text) = "scoubi") Then
      leDoc.Selection.range.Delete
Else
End If
 
End With
next ii

en fait en pas findtext reste vide ! alors que si j'écris par exemple :

Code:
leDoc.Content.Find.Execute findtext:="scoubi", ReplaceWith:="trouvé", Replace:=wdReplaceAll

le mot scoubi est bien remplacé par trouvé
 
Dernière édition:

Statistiques des forums

Discussions
311 725
Messages
2 081 940
Membres
101 845
dernier inscrit
annesof