2 бързи начина за намиране или изтриване на изречения, съдържащи конкретен текст във вашата дума

Споделете сега:

В тази статия ще ви предложим 2 бързи начина да намерите или изтриете изречения, съдържащи конкретен текст във вашата Word.

Известно е на всички, че можем да използваме функцията „Търсене и замяна“ в Word, за да намерим лесно всички срещания на определени думи. Тогава няма да имаме проблем с тяхното маркиране, заместване или премахване. Както виждате, целта е дума или фраза. Днес обаче с удоволствие ще ви разкажем за макроса за намиране или изтриване на изречения, съдържащи определен текст.Намерете или изтрийте изречения, съдържащи конкретен текст

Метод 1: Намерете или изтрийте изречения, съдържащи конкретен текст

  1. Като начало натиснете „Alt + F11“, за да задействате редактора на VBA в Word.
  2. След това създайте нов модул, като щракнете върху „Нормално“.
  3. След това кликнете върху „Вмъкване“ и изберете „Модул“, за да получите нов.Щракнете върху "Нормално" -> Щракнете върху "Вмъкване" -> Щракнете върху "Модул"
  4. И отворете модула с двойно щракване.
  5. Сега поставете следните кодове:
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. След това кликнете върху „Run“.Поставяне на кодове-> Щракнете върху "Изпълни"
  2. Ще има поле за въвеждане, което ще ви помоли да въведете текст. Просто напишете общия текст, който съдържат всички изречения. Щракнете върху „OK“.Въведете текстове-> Щракнете върху „OK“
  3. След това ще видите изречение, съдържащо текста в селекция с подканващо поле за съобщение. Щракнете върху „Да“, за да изтриете изречението и „Не“, за да го запазите.Щракнете върху „Да“ или „Не“, за да потвърдите действието
  4. След потвърждението, следващото изречение с обозначен текст е в селекция. Има и поле за потвърждение. Макросът ви води през целия документ, намирайки целевите изречения и всеки път изисквайки потвърждение.

Метод 2: Намерете или изтрийте изречения, съдържащи всеки текст от списък

С макроса в метод 1 можете да търсите само една дума или фраза в даден момент. Разбира се, можете да стартирате макроса многократно, за да търсите за намиране на множество екземпляри от думи или фрази. За да отговорим на необходимостта от многократно търсене, ще ви предоставим друг макрос.

  1. Първо поставете всички целеви текстове в нов документ. Уверете се, че всяко парче текст заема един параграф без интервал. Затворете и запазете документа.
  2. След това инсталирайте и стартирайте макрос с точните стъпки в метод 1.
  3. След това заменете макроса с този:
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. Сега ще се отвори прозорецът „Преглед“. Изберете току-що записания документ и щракнете върху „Отваряне“.
  2. Следващата процедура е същата като тази в метод 1.

Подход за справяне с корумпирани документи

Загубата на ценни данни е абсолютно опустошителна. Може дори да остави бизнеса ви на карта. За да избегнете такова разочарование, трябва да хванете a Поправка на думи инструмент възможно най-скоро. Такъв инструмент ще ви помогне да спечелите битката с корупцията на документи.

Въведение на автора:

Вера Чен е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително поправете Excel и pdf ремонт на софтуерни продукти. За повече информация посетете WWW.datanumen.com

Споделете сега:

Коментарите са забранени.