Tänases artiklis soovime teiega jagada samme, kuidas kõik järjehoidjad oma Wordi dokumendist pakk välja võtta, et neid korraga vaadata.
Wordis saate sisseehitatud funktsiooniga luua sisukorra või jooniste tabeli. Kuid lõpuks avastate, et ei ole tavalist võimalust dokumendi kõigi järjehoidjate eraldamiseks ja uueks dokumendiks korraldamiseks.
Nagu alati, on meie missioon juhtida teid läbi müüdi ja pakkuda teile makromeetodit kõigi järjehoidjate ja nende tekstide eksportimiseks uude tühja dokumenti.
Pakkige kõik järjehoidjad ühest dokumendist välja
- Alustamiseks avage sihtdokument ja vajutage VBA redaktori käivitamiseks klahvikombinatsiooni „Alt + F11”.
- Järgmisena klõpsake nuppu "Tavaline" ja seejärel "Insert".
- Ja valige "Moodul", et luua uus projekti "Tavaline" all.
- Seejärel topeltklõpsake sellel, et tuua esile redigeerimisruum.
- Kleepige sinna järgmine makro:
Sub ExtractBookmarksInADoc()
Dim objBookmark As Bookmark
Dim objTable As Table
Dim nRow As Integer
Dim objDoc As Document, objNewDoc As Document
Dim objParagraph As Paragraph
Set objDoc = ActiveDocument
If objDoc.Bookmarks.Count = 0 Then
MsgBox ("There is no bookmark in this document.")
Else
Set objNewDoc = Documents.Add
Selection.TypeText Text:="Bookmarks in " & "'" & objDoc.Name & "'"
Set objTable = Selection.Tables.Add(Range:=Selection.Range, numrows:=1, numcolumns:=3)
objTable.Borders.Enable = True
nRow = 1
For Each objParagraph In objNewDoc.Paragraphs
If objParagraph.Range.Style = "Caption" Then
objParagraph.Range.Delete
End If
Next objParagraph
With objTable
.Cell(1, 1).Range.Text = "Name"
.Cell(1, 2).Range.Text = "Texts"
.Cell(1, 3).Range.Text = "Page Number"
For Each objBookmark In objDoc.Bookmarks
objTable.Rows.Add
nRow = nRow + 1
.Cell(nRow, 1).Range.Text = objBookmark.Name
.Cell(nRow, 2).Range.Text = objBookmark.Range.Text
.Cell(nRow, 3).Range.Text = objBookmark.Range.Information(wdActiveEndAdjustedPageNumber)
objDoc.Hyperlinks.Add Anchor:=.Cell(nRow, 3).Range, Address:=objDoc.Name, _
SubAddress:=objBookmark.Name, TextToDisplay:=.Cell(nRow, 3).Range.Text
Next objBookmark
End With
End If
objNewDoc.SaveAs2 FileName:=objDoc.Path & "\" & "Bookmarks in " & objDoc.Name
End Sub
- Viimane, kuid mitte vähem oluline, klõpsake nuppu "Käivita".
Kõik praeguse dokumendi järjehoidjad paigutatakse uue dokumendi tabelisse, mis on salvestatud algse failiga samasse kataloogi.
Uues dokumendis näete 3 veeru tabelit. Ja kui järgite klahvikombinatsiooni "Ctrl + Click", viib see teid algdokumendi järjehoidja juurde.
Pakkige järjehoidjate väljavõte mitmest dokumendist
Makro installimiseks ja käivitamiseks järgige ülaltoodud samme. Ainult seekord asendate koodid järgmistega:
Sub ExtractBookmarksInMultiDoc()
Dim objBookmark As Bookmark
Dim objTable As Table
Dim nRow As Integer
Dim objDoc As Document, objNewDoc As Document
Dim objParagraph As Paragraph
Dim strFolder As String, strFile As String
strFolder = InputBox("Enter folder path here: ")
strFile = Dir(strFolder & "*.docx", vbNormal)
While strFile <> ""
Set objDoc = Documents.Open(FileName:=strFolder & strFile)
Set objDoc = ActiveDocument
Set objNewDoc = Documents.Add
Selection.TypeText Text:="Bookmarks in " & "'" & objDoc.Name & "'"
Set objTable = Selection.Tables.Add(Range:=Selection.Range, numrows:=1, numcolumns:=3)
objTable.Borders.Enable = True
nRow = 1
For Each objParagraph In objNewDoc.Paragraphs
If objParagraph.Range.Style = "Caption" Then
objParagraph.Range.Delete
End If
Next objParagraph
With objTable
.Cell(1, 1).Range.Text = "Name"
.Cell(1, 2).Range.Text = "Texts"
.Cell(1, 3).Range.Text = "Page Number"
For Each objBookmark In objDoc.Bookmarks
objTable.Rows.Add
nRow = nRow + 1
.Cell(nRow, 1).Range.Text = objBookmark.Name
.Cell(nRow, 2).Range.Text = objBookmark.Range.Text
.Cell(nRow, 3).Range.Text = objBookmark.Range.Information(wdActiveEndAdjustedPageNumber)
objDoc.Hyperlinks.Add Anchor:=.Cell(nRow, 3).Range, Address:=objDoc.Name, _
SubAddress:=objBookmark.Name, TextToDisplay:=.Cell(nRow, 3).Range.Text
Next objBookmark
End With
objNewDoc.SaveAs2 FileName:=objDoc.Path & "\" & "Bookmarks in " & objDoc.Name
objDoc.Close
strFile = Dir()
Wend
End Sub
Kui olete makro käivitanud, on sisestuskast. Sisestage kausta tee, kuhu kõik dokumendid salvestate. Ja pidage meeles lisage tee lõppu "\". kui kopeerite selle lihtsalt kausta tekstikastist. Seejärel klõpsake nuppu "OK".
Kuidas end kiiresti andmekatastroofist päästa
Andmekatastroof, millest Wordis räägime, võib juhtuda alati, kui see lakkab töötamast ebatavaliselt. Mõnikord veab ja kogu teave on puutumata. Ja teinekord langete katastroofi ohvriks. Seetõttu on kiireim viis võimalikult suure hulga andmete hankimiseks hankida tööriist paranda docx.
Autori sissejuhatus:
Vera Chen on andmete taastamise ekspert DataNumen, Inc., mis on maailmas juhtiv andmete taastamise tehnoloogiate, sealhulgas remont xlsx ja pdf tarkvaratooted. Lisateabe saamiseks külastage www.datanumenCom



