Bugünkü məqalədə, Word sənədinizdən bütün əlfəcinləri bir anda görmək üçün toplu çıxarmaq üçün addımları sizinlə bölüşmək istərdik.
Word-də daxili funksiyası ilə məzmun cədvəli və ya rəqəmlər cədvəli yarada bilərsiniz. Ancaq nəticədə bir sənədin bütün əlfəcinlərini çıxarmaq və onları yeni sənəddə yerləşdirmək üçün adi bir yol olmadığını görəcəksiniz.
Həmişə olduğu kimi, bizim missiyamız sizi əfsanə ilə tanış etmək və sizə bütün əlfəcinləri, eləcə də onların mətnlərini yeni boş sənədə ixrac etmək üçün makro yolla təmin etməkdir.
Bütün əlfəcinləri tək bir sənəddən toplu çıxarın
- Başlamaq üçün hədəf sənədi açın və VBA redaktorunu işə salmaq üçün "Alt + F11" düymələrini basın.
- Sonra "Normal" və sonra "Daxil et" düyməsini basın.
- Və "Normal" layihəsi altında yenisini yaratmaq üçün "Module" seçin.
- Sonra redaktə yerini çıxarmaq üçün üzərinə iki dəfə vurun.
- Aşağıdakı makronu oraya yapışdırın:
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
- Sonuncu, lakin ən azı, "Çalış" düyməsini basın.
Cari sənədin bütün əlfəcinləri orijinal fayl ilə eyni qovluqda saxlanılan yeni sənədin cədvəlində yerləşdiriləcək.
Yeni sənəddə 3 sütundan ibarət cədvəli görə bilərsiniz. Əgər “Ctrl+ Click” düyməsinə əməl etsəniz, o, sizi orijinal sənəddəki əlfəcinə aparacaqdır.
Birdən çox Sənəddən Əlfəcinləri Toplu çıxarış
Makronu quraşdırmaq və işə salmaq üçün yuxarıdakı eyni addımları yerinə yetirin. Yalnız bu dəfə kodları aşağıdakılarla əvəz edirsiniz:
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
Makronu işə saldıqdan sonra bir giriş qutusu var. Bütün sənədləri saxladığınız qovluq yolunu daxil edin. Və unutmayın yolun sonuna “\” əlavə edin onu sadəcə qovluq mətn qutusundan kopyalasanız. Sonra "OK" düyməsini basın.
Özünüzü məlumat fəlakətindən necə tez xilas etmək olar
Word-də bəhs etdiyimiz məlumat fəlakəti, anormal işləməyi dayandırdıqda baş verə bilər. Bəzən şanslı olursunuz və bütün məlumatlarınız toxunulmazdır. Digər vaxtlarda isə fəlakətin qurbanı olursunuz. Buna görə də, mümkün qədər çox məlumat əldə etməyin ən sürətli yolu alət əldə etməkdir docx düzəldin.
Müəllif Giriş:
Vera Çen məlumatların bərpası üzrə mütəxəssisdir DataNumendaxil olmaqla məlumatların bərpası texnologiyaları üzrə dünya lideri olan , Inc təmir xlsx və pdf proqram məhsullarının təmiri. Ətraflı məlumat üçün ziyarət edin www.datanumen.com



