V tomto článku vám ukážeme způsob, jak extrahovat obsah mezi dvěma konkrétními slovy z jednoho dokumentu Word do jiného.
Občas budete muset extrahovat obsah mezi konkrétními slovy. Následují 2 možné případy, na které můžete narazit:
- Nejprve v tabulce Word u všech buněk ve sloupci začínajících a končících stejnými 2 slovy možná budete muset extrahovat pouze různé střední části, například níže:
- Zadruhé, v některých souborech protokolu s více položkami budete pravděpodobně muset extrahovat pouze ty, které potřebujete. Pak můžete určit první a poslední slovo a použít metodu v tomto článku k získání obsahu, který potřebujete.
K provedení takového úkolu dáváme přednost spuštění makra Wordu. Postupujte podle těchto kroků.
Extrahujte obsah mezi dvěma slovy
- Předevšímost, stisknutím kláves „Alt + F11“ otevřete editor VBA ve Wordu.
- Dále klikněte na „Normální“ projekt v levém sloupci.
- Poté na panelu nabídek klikněte na kartu „Vložit“.
- V rozevírací nabídce vyberte možnost „Modul“.
- Poklepáním otevřete kódovací prostor nového modulu a vložte tam tyto kódy:
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
- Poté klikněte na „Spustit“ nebo stiskněte „F5“ a proveďte kódy.
- Do vstupního pole „První slovo“ zadejte první slovo. Pamatujte, že makro rozlišuje velká a malá písmena. Pokud je to nutné, slovo inicializujte.
- Poté klikněte na „OK“ a přejděte do pole „Poslední slovo“.
- Podobně zadejte slovo a klikněte na „OK“. Nezapomeňte dodržovat stejné pravidlo inicializace slova podle.
Bude otevřen nový dokument a objeví se tam veškerý extrahovaný obsah.
Extrahujte obsah v závorkách
Jak jsme již zmínili, některý obsah je uveden v závorkách. Pak můžete udělat toto:
- StarPokud chcete vypnout, musíte postupovat podle výše uvedených kroků, chcete-li nainstalovat a spustit makro.
- Nyní podle typu závorky můžete zvolit odpovídající makro níže:
Pro závorky {}:
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
- Pro hranaté závorky []:
Stačí nahradit tento řádek kódu:
.Text = "\{(*)\}"
S:
.Text =\[(*)\]
- Pak pro závorky ():
Nahraďte stejný řádek kódu v kroku 3 za:
.Text = "\((*)\)"
- A pro úhlové závorky <>:
Místo toho použijte tento řádek:
.Text = "\<(*)\>"
Zvládněte katastrofu dat
Ve vysoce propojeném Wordu, jako je ten náš, je zásadní mít neustále na paměti bezpečnost dat. A co víc, člověk musí vědět, co dělat v době datové katastrofy. A nejlepší volbou je získat Oprava docx nástroj.
Úvod autora:
Vera Chen je expertka na obnovu dat DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně xls zotavení a pdf opravy softwarových produktů. Pro více informací navštivte www.datanumen.com




