2014-05-14 4 views
0

L'erreur se produit comme décrit dans les étapes ci-dessous:
1. Si je recherche un mot clé, le mot clé recherché est mis en évidence.
2.La prochaine fois que je cherche quelque chose, les résultats de recherche précédents mis en évidence restent.
3.How pour enlever les faits saillants précédents que j'ai faitComment mettre en surbrillance le texte que je viens de mettre en surbrillance dans Word

Private Sub Search_Button_Click(sender As Object, e As EventArgs) Handles Search_Button.Click 

    Dim wordApp As Word.Application, currentDoc As Word.Document 
    wordApp = DirectCast(GetObject(, "Word.Application"), Word.Application) 

    currentDoc = wordApp.ActiveDocument 

    With currentDoc.Content.Find 
     .MatchCase = False 
     .ClearFormatting() 
     .Text = SearchBox.Text 

     With .Replacement 
      .ClearFormatting() 
      .Text = SearchBox.Text 
      .Highlight = Word.WdColor.wdColorTurquoise 
     End With 
     .Execute(Replace:=Word.WdReplace.wdReplaceAll) 
    End With 
End Sub 

End Class 
  • J'apprends à automatiser mot à l'aide VB.NET. Y at-il des tutoriels pour les débutants alors s'il vous plaît suggérer.

Répondre

0

Essayez quelque chose comme ça (en référence à votre code):

With currentDoc.Content.Find 
    .ClearFormatting() 
    .Highlight = True 

    With .Replacement 
     .ClearFormatting() 
     .Highlight = False 
'see additional comment below to this point of the code 
    End With 
    .Execute(Replace:=Word.WdReplace.wdReplaceAll) 
End With 

Commentaire: il est parfois nécessaire d'ajouter le paramètre supplémentaire (s) lorsque vous travaillez avec find >> replace. Si la syntaxe ci-dessus présenté ne fonctionne pas essayer d'ajouter certaines (ou toutes) des propriétés dans le point que je commentais dans le code ci-dessus:

.Forward = True 
    .Wrap = wdFindContinue 
    .Format = True 
    .MatchCase = False 
    .MatchWholeWord = False 
    .MatchWildcards = False 
    .MatchSoundsLike = False 
    .MatchAllWordForms = False 
+0

Le mot .forward, .Wrap ... 'obtient surligné en bleu color' donner une erreur: 'Forward' n'est pas un membre de 'Word.Replacement', .Wrap n'est pas un membre de 'Word.Replacement ... – Akki

+0

oui, je vous ai donné le code VBA que vous devez convertir en VB.Net, je pense que c'est une raison. –

Questions connexes