Өнөөдрийн нийтлэлд бид Word хавтаснаас хавчуургуудыг бүгдийг нь нэг дор үзэх зорилгоор задлах алхамуудыг хуваалцахыг хүсч байна.
Word дээр та агуулгын хүснэгт эсвэл дүрсүүдийн хүснэгтийг угсарсан функцээр үүсгэх боломжтой. Гэхдээ баримт бичгийн бүх хавчуургыг задлах, шинэ баримт бичигт байрлуулах ердийн арга байхгүй гэдгийг та эцэст нь олж мэднэ.
Үргэлж л адил бидний эрхэм зорилго бол таныг домогоор дамжуулж, бүх хавчуурга, тэдгээрийн текстийг шинэ хоосон баримт бичигт экспортлох макро арга замыг санал болгох явдал юм.
Бүх хавчуургыг нэг документаас задлах
- Эхлэхийн тулд зорилтот баримтыг нээгээд VBA засварлагчийг ажиллуулахын тулд "Alt + F11" товчийг дарна уу.
- Дараа нь "Normal" дээр дараад "Insert" дээр дарна уу.
- Мөн "Модуль" -ыг сонгоод "Normal" төслийн хүрээнд шинээр үүсгэх боломжтой.
- Дараа нь дээр нь давхар товшоод засварлах зайг гаргаж ирнэ үү.
- Дараахь макроыг наана уу:
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
- Хамгийн сүүлд гэхдээ хамгийн бага нь биш, "Ажиллуулах" дээр дарна уу.
Одоогийн баримт бичгийн бүх хавчуургыг анхны файлтай ижил директорын дор хадгалсан шинэ баримт бичигт хүснэгтэд оруулах болно.
Та шинэ баримт бичигт 3 баганын хүснэгтийг харж болно. Хэрэв та "Ctrl + Click" -ийг дагаж мөрдвөл анхны баримт бичигт байгаа хавчуурга руу хөтлөх болно.
Олон баримтаас хавчуургыг багцаар задлах
Макро суулгаж ажиллуулахын тулд дээрх алхмуудыг дагана уу. Зөвхөн энэ удаа та кодыг доорх кодоор солино уу:
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
Макро ажиллуулсны дараа оруулах хайрцаг байна. Бүх баримт бичгүүдийг хадгалах фолдерын замыг оруулна уу. Үүнийг санаарай замын төгсгөлд “\” нэмэх хэрэгтэй хэрэв та үүнийг хавтасны текст хайрцгаас хуулж авбал. Дараа нь "OK" дээр дарна уу.
Мэдээллийн гамшгаас өөрийгөө хэрхэн хурдан гаргах вэ
Бидний Word дээр ярьдаг өгөгдлийн гамшиг нь хэвийн бус ажиллахаа болих бүрт тохиолдож болно. Заримдаа та азтай болж, бүх мэдээллийг бүрэн бүтэн байлгадаг. Бусад тохиолдолд та гамшгийн золиос болдог. Тиймээс аль болох их хэмжээний өгөгдөл татах хамгийн хурдан арга бол хэрэгсэл олж авах явдал юм docx-ийг засах.
Зохиогчийн танилцуулга:
Вера Чен бол мэдээлэл сэргээх мэргэжилтэн юм DataNumen, Үүнд мэдээлэл сэргээх технологиор дэлхийд тэргүүлэгч, Inc. xlsx засах болон pdf програм хангамжийн бүтээгдэхүүнийг засах. Дэлгэрэнгүй мэдээллийг авна уу WWW.datanumen.com



