I den här artikeln visar vi dig hur du extraherar innehåll mellan två specifika ord från ett Word-dokument till ett annat.
Ibland måste du extrahera innehåll mellan specifika ord vid vissa tillfällen. Följande är två möjliga fall du kan stöta på:
- Först, i en Word-tabell, för alla celler i en kolumn som börjar och slutar med samma två ord, kan du behöva extrahera bara de olika mellersta delarna, till exempel nedan:
- För det andra, i vissa loggfiler med flera poster, kommer du förmodligen att behöva extrahera bara de du behöver. Sedan kan du ange det första och sista ordet och använda metoden I den här artikeln för att få innehåll du behöver.
För att utföra en sådan uppgift föredrar vi att köra ett Word-makro. Följ bara dessa steg.
Extrahera innehåll mellan två ord
- Först och föremost, tryck “Alt + F11” för att öppna VBA-redigeraren i Word.
- Klicka sedan på “Normal” -projekt i den vänstra kolumnen.
- Klicka sedan på fliken "Infoga" i menyraden.
- Välj "Modul" i rullgardinsmenyn.
- Dubbelklicka för att ange kodutrymmet för den nya modulen och klistra in dessa koder där:
Sub ExtractContentsBetweenTwoWords()
Dim strFirstWord As String
Dim strLastWord As String
Dim objDoc As Document
Dim objDocAdd As Document
Dim objRange As Range
' Initialize and create a new blank document.
Set objDoc = ActiveDocument
Set objDocAdd = Documents.Add
objDoc.Activate
' Enter the first and last words.
strFirstWord = InputBox("Enter the first word:", "First Word")
strLastWord = InputBox("Enter the last word:", "Last Word")
' Find and extract contents and insert them into the new document.
With Selection
.HomeKey Unit:=wdStory
With Selection.Find
.ClearFormatting
.Text = strFirstWord & "*" & strLastWord
.MatchWildcards = True
.MatchWholeWord = True
Do While .Execute
Selection.MoveStart Unit:=wdCharacter, Count:=Len(strFirstWord)
Selection.MoveEnd Unit:=wdCharacter, Count:=-Len(strLastWord)
objDocAdd.Range.InsertAfter Selection.Range & vbNewLine
Selection.Collapse wdCollapseEnd
Loop
End With
End With
End Sub
- Klicka sedan på "Kör" eller tryck på "F5" för att köra koder.
- Ange det första ordet i inmatningsrutan ”Första ordet”. Kom ihåg att makrot är skiftlägeskänsligt. Initiera därför ordet om det behövs.
- Klicka sedan på "OK" för att gå till rutan "Senaste ordet".
- På samma sätt anger du ord och klickar på “OK”. Glöm inte att följa samma regel för att initialisera ord enligt.
Det kommer att finnas ett nytt dokument öppet och allt extraherat innehåll ska visas där.
Extrahera innehåll i fästen
Som vi har nämnt finns en del innehåll inom parentes. Så här är vad du kan göra:
- Till starOm du inte vill ha det måste du följa stegen ovan för att installera och köra ett makro.
- Nu beroende på typen av en parentes kan du välja motsvarande makro nedan:
För hängslen {}:
Sub ExtractContentsInBraces()
Dim objDoc As Document
Dim objDocAdd As Document
Dim objRange As Range
Set objDoc = ActiveDocument
Set objDocAdd = Documents.Add
objDoc.Activate
With Selection
.HomeKey Unit:=wdStory
With Selection.Find
.ClearFormatting
.Replacement.ClearFormatting
.Text = "\{(*)\}"
.MatchWildcards = True
Do While .Execute
Selection.MoveStart Unit:=wdCharacter, Count:=1
Selection.MoveEnd Unit:=wdCharacter, Count:=-1
objDocAdd.Range.InsertAfter Selection.Range & vbNewLine
Selection.Collapse wdCollapseEnd
Loop
End With
End With
End Sub
- För hakparenteser []:
Byt bara ut den här kodraden:
.Text = "\{(*)\}"
Med:
.Text =\[(*)\]
- Sedan för parenteser ():
Ersätt samma kodrad i steg 3 med:
.Text = "\((*)\)"
- Och för vinkelfästen <>:
Använd den här raden istället:
.Text = "\<(*)\>"
Hantera en datakatastrof
I ett mycket anslutet ord som vårt är det viktigt att ha datasäkerheten i åtanke hela tiden. Dessutom måste man behöva veta vad man ska göra i tider med en datakatastrof. Och ditt bästa val är att få en docx reparation verktyg.
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 xls-återställning och pdf reparera programvaruprodukter. För mer information besök www.datanumen.com




