Kā no partijas izvilkt visas grāmatzīmes no jūsu Word dokumenta

Kopīgot tūlīt:

Šodienas rakstā mēs vēlētos dalīties ar jums darbībās, lai no visas jūsu Word dokumenta partijas izvilktu visas grāmatzīmes, lai tās uzreiz skatītu.

Programmā Word varat izveidot satura rādītāju vai skaitļu tabulu ar iebūvēto funkciju. Bet galu galā jūs atradīsit, ka nav ierasta veida, kā iegūt visas dokumenta grāmatzīmes un sakārtot tās jaunā dokumentā.Kā no partijas izvilkt visas grāmatzīmes no jūsu Word dokumenta

Kā vienmēr, mūsu misija ir iepazīstināt jūs ar mītu un sniegt makro veidu, kā eksportēt visas grāmatzīmes, kā arī to tekstus uz jaunu tukšu dokumentu.

Partijas izvilkt visas grāmatzīmes no viena dokumenta

  1. Uz start off, atveriet tariegūstiet dokumentu un nospiediet “Alt + F11”, lai izsauktu VBA redaktoru.
  2. Pēc tam noklikšķiniet uz “Normal” un pēc tam uz “Insert”.
  3. Un izvēlieties “Module”, lai izveidotu jaunu projektā “Normal”.Noklikšķiniet uz "Normal" -> Noklikšķiniet uz "Insert" -> Noklikšķiniet uz "Module"
  4. Pēc tam veiciet dubultklikšķi uz tā, lai parādītu rediģēšanas vietu.
  5. Ielīmējiet tur šādu 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
  1. Visbeidzot, bet ne mazāk svarīgi, noklikšķiniet uz “Palaist”.Kodu ielīmēšana-> noklikšķiniet uz "Palaist"

Visas pašreizējā dokumenta grāmatzīmes tiks ievietotas jaunā dokumenta tabulā, kas saglabāta tajā pašā direktorijā kā sākotnējais fails.

Jaunajā dokumentā varat redzēt 3 kolonnu tabulu. Un, ja jūs sekojat “Ctrl + Click”, tas novedīs jūs pie grāmatzīmes oriģinālajā dokumentā.Visu grāmatzīmju, to tekstu un lapu numuru tabula

Partijas ekstrakta grāmatzīmes no vairākiem dokumentiem

Lai instalētu un palaistu makro, rīkojieties iepriekš. Tikai šoreiz jūs aizstājat kodus ar zvanošiem kodiem:

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

Pēc makro palaišanas ir ievades lodziņš. Ievadiet mapes ceļu, kur glabājat visus dokumentus. Un atcerieties ceļa beigās pievienojiet “\” ja to vienkārši nokopējat no mapes tekstlodziņa. Pēc tam noklikšķiniet uz Labi.Ievadiet mapes ceļu-> noklikšķiniet uz "OK"

Kā ātri glābt sevi no datu katastrofas

Datu katastrofa, par kuru mēs runājam programmā Word, var notikt ikreiz, kad tā pārstāj darboties neparasti. Dažreiz jums paveicas un visa informācija ir neskarta. Un citreiz jūs kļūsiet par katastrofas upuri. Tāpēc ātrākais veids, kā iegūt pēc iespējas vairāk datu, ir iegūt rīku labot docx.

Autora ievads:

Vera Čena ir datu atkopšanas eksperte DataNumen, Inc., kas ir pasaules līderis datu atkopšanas tehnoloģiju, tostarp labot xlsx un pdf programmatūras produktu labošana. Lai iegūtu vairāk informācijas, apmeklējiet vietni www.datanumen. Ar

Kopīgot tūlīt:

Komentāri ir slēgti.