2 snabba sätt att hitta eller ta bort meningar som innehåller specifik text i ditt ord

I den här artikeln kommer vi att erbjuda dig två snabba sätt att hitta eller ta bort meningar som innehåller specifik text i ditt Word.

Det är känt för alla att vi kan använda funktionen "Sök och ersätt" i Word för att enkelt hitta alla förekomster av specifika ord. Då har vi inga problem med att markera, ersätta eller ta bort dem. Som ni ser är målet ett ord eller en fras. Idag är vi dock glada att kunna berätta makrometoden för att hitta eller ta bort meningar som innehåller viss text.Hitta eller ta bort meningar som innehåller specifik text

Metod 1: Hitta eller ta bort meningar som innehåller specifik text

  1. Till att börja med trycker du på “Alt + F11” för att utlösa VBA-redigeraren i Word.
  2. Skapa sedan en ny modul genom att klicka på “Normal”.
  3. Klicka sedan på "Infoga" och välj "Modul" för att få en ny.Klicka på "Normal" -> Klicka på "Infoga" -> Klicka på "Modul"
  4. Och öppna modulen med dubbelklick.
  5. Klistra in följande koder:
Sub DeleteSentencesContainingSpecificWords()
  Dim strTexts As String
  Dim strButtonValue As String
 
  strTexts = InputBox("Enter texts to be found here: ")
 
  With Selection
    .HomeKey Unit:=wdStory
 
    '  Find the entered texts.
    With Selection.Find
      .ClearFormatting
      .Text = strTexts
      .Replacement.Text = ""
      .Forward = True
      .Wrap = wdFindContinue
      .Format = False
      .MatchCase = False
      .MatchWholeWord = False
      .MatchWildcards = False
      .MatchSoundsLike = False
      .MatchAllWordForms = False
      .Execute
    End With
 
    Do While .Find.Found = True
      '  Expand the selection to the entire sentence.
      Selection.Expand Unit:=wdSentence
      strButtonValue = MsgBox("Are you sure to delete the sentence?", vbYesNo)
      If strButtonValue = vbYes Then
        Selection.Delete
      End If
      .Collapse wdCollapseEnd
      .Find.Execute
    Loop
  End With
End Sub
  1. Klicka sedan på "Kör".Klistra in koder-> Klicka på "Kör"
  2. Det kommer att finnas en inmatningsruta där du ber dig skriva in text. Skriv bara den vanliga texten som alla meningar innehåller. Klicka på “OK”.Ange texter-> Klicka på "OK"
  3. Då ser du en mening som innehåller texten i valet med en meddelandefält som uppmanar. Klicka på "Ja" för att radera meningen och "Nej" för att behålla den.Klicka på "Ja" eller "Nej" för att bekräfta åtgärden
  4. Efter bekräftelsen är nästa mening med angiven text markerad. Och det finns också en bekräftelseruta. Makrot tar dig stegvis igenom hela dokumentet, hittar målmeningar och ber om bekräftelse varje gång.

Metod 2: Hitta eller ta bort meningar som innehåller text i en lista

Med makrot i metod 1 kan du bara söka efter ett ord eller en fras varje gång. Visst kan du köra makrot upprepade gånger för att söka efter hitta flera instanser av ord eller fraser. För att möta behovet av flera sökningar ger vi dig ett annat makro.

  1. Lägg först alla måltexter i ett nytt dokument. Se till att varje textdel upptar ett stycke utan mellanslag. Stäng och spara dokumentet.
  2. Installera sedan och kör ett makro med de exakta stegen i metod 1.
  3. Ersätt sedan makro med det här:
Sub DeleteSentencesContainingSpecificWordsOnAList()
  Dim objListDoc As Document, objTargetDoc As Document
  Dim objParaRange As Range
  Dim objParagraph As Paragraph
  Dim strFileName As String, strButtonValue As String
  Dim dlgFile As FileDialog
 
  Set dlgFile = Application.FileDialog(msoFileDialogFilePicker)
 
  With dlgFile
    If .Show = -1 Then
      strFileName = .SelectedItems(1)
    Else
      MsgBox "No file is selected! Please select the target file."
      Exit Sub
    End If
  End With
  Set objTargetDoc = ActiveDocument
  Set objListDoc = Documents.Open(strFileName)
  objTargetDoc.Activate
 
  For Each objParagraph In objListDoc.Paragraphs
    Set objParaRange = objParagraph.Range
    objParaRange.End = objParaRange.End - 1
 
    With Selection
      .HomeKey Unit:=wdStory
 
      '  Find target words.
      With Selection.Find
        .ClearFormatting
        .Text = objParaRange
        .MatchWholeWord = True
        .MatchCase = False
        .Execute
      End With
 
      '  Expand the selection to the entire sentence.
      Do While .Find.Found
        Selection.Expand Unit:=wdSentence
        strButtonValue = MsgBox("Are you sure to delete the sentence?", vbYesNo)
        If strButtonValue = vbYes Then
          Selection.Delete
        End If
        .Collapse wdCollapseEnd
        .Find.Execute
      Loop
    End With
  Next objParagraph
End Sub
  1. Nu öppnas "Bläddra" -fönstret. Välj det dokument som just sparats och klicka på "Öppna".
  2. Följande procedur är samma som i metod 1.

Tillvägagångssätt för att hantera korrupta dokument

Förlust av värdefull data är helt förödande. Det kan till och med lämna ditt företag på spel. För att undvika sådan frustration måste du ta tag i a Ordfix verktyg så snart som möjligt. Ett sådant verktyg hjälper dig att vinna kampen med dokumentkorruption.

Författarintroduktion:

Vera Chen är en dataåterställningsexpert i DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive fixa Excel och pdf reparera programvaruprodukter. För mer information besök www.datanumen.com

Kommentarer är stängda.