Skip to main content

Kutools for Office — مجموعة واحدة. خمسة أدوات. أنجز المزيد.

كيفية طباعة قائمة الإشارات المرجعية في مستند Word؟

Author Siluvia Last modified

هل سبق أن حاولت طباعة قائمة بالإشارات المرجعية في مستند Word؟ هنا سنعرض لك طرقًا لتحقيق ذلك.

استخراج جميع الإشارات المرجعية وطباعتها باستخدام VBA

طباعة جميع الإشارات المرجعية مباشرة باستخدام VBA


استخراج جميع الإشارات المرجعية وطباعتها باستخدام VBA

سيساعدك الكود التالي المكتوب بلغة VBA على سرد جميع الإشارات المرجعية من المستند الحالي إلى مستند جديد، ويمكنك طباعة الإشارات المرجعية المستخرجة يدويًا حسب الحاجة. الرجاء اتباع الخطوات التالية:

1. افتح المستند الذي تريد طباعة الإشارات المرجعية منه، واضغط على مفتاحي Alt + F11 لفتح نافذة Microsoft Visual Basic for Applications.

2. في نافذة Microsoft Visual Basic for Applications، انقر فوق إدراج > وحدة، ثم قم بنسخ الكود أدناه إلى نافذة الوحدة.

كود VBA: استخراج جميع الإشارات المرجعية إلى مستند جديد

Sub ExtractBookmarksInADoc()
'Updated by Extendoffice 20181123
    Dim xRow As Long
    Dim xTable As Table
    Dim xDoc As Document
    Dim xBookMark As Bookmark
    Dim xBookMarkDoc As Document
    Dim xParagraph As Paragraph
    Set xDoc = ActiveDocument
    If xDoc.Bookmarks.Count = 0 Then
        MsgBox "There is no bookmark in this document", vbInformation, "KuTools for Word"
        Exit Sub
    End If
    Set xBookMarkDoc = Documents.Add
    xRow = 1
    Selection.TypeText "BookMarks in " & "'" & xDoc.Name & "'"
    Set xTable = Selection.Tables.Add(Selection.Range, 1, 3)
    xTable.Borders.Enable = True
    With xTable
        .Cell(xRow, 1).Range.Text = "Name"
        .Cell(xRow, 2).Range.Text = "Texts"
        .Cell(xRow, 3).Range.Text = "Page Number"
        For Each xBookMark In xDoc.Bookmarks
            xTable.Rows.Add
            xRow = xRow + 1
            .Cell(xRow, 1).Range.Text = xBookMark.Name
            .Cell(xRow, 2).Range.Text = xBookMark.Range.Text
            .Cell(xRow, 3).Range.Text = xBookMark.Range.Information(wdActiveEndAdjustedPageNumber)
            xDoc.Hyperlinks.Add Anchor:=.Cell(xRow, 3).Range, Address:=xDoc.Name, _
              SubAddress:=xBookMark.Name, TextToDisplay:=.Cell(xRow, 3).Range.Text
        Next
    End With
    xBookMarkDoc.SaveAs xDoc.Path & "\" & "Bookmarks in " & xDoc.Name
End Sub

3. اضغط على مفتاح F5 لتشغيل الكود.

ثم يتم إنشاء مستند جديد تلقائيًا مع سرد جميع الإشارات المرجعية الخاصة بالمستند المحدد بداخله.

New document with all bookmarks of specified document listing inside

4. يمكنك النقر فوق ملف > طباعة لطباعة قائمة الإشارات المرجعية المستخرجة حسب الحاجة.

Kutools for Word،المزود بذكاء اصطناعي 🤖، يقدم أكثر من 100 ميزة عملية لتبسيط مهامك.

طباعة جميع الإشارات المرجعية مباشرة باستخدام VBA

إذا كنت ترغب في طباعة جميع الإشارات المرجعية مباشرة في المستند الحالي، يرجى اتباع الخطوات التالية:

1. افتح المستند الذي تريد طباعة الإشارات المرجعية منه، واضغط على مفتاحي Alt + F11 لفتح نافذة Microsoft Visual Basic for Applications.

2. في نافذة Microsoft Visual Basic for Applications، انقر فوق إدراج > وحدة، ثم قم بنسخ الكود أدناه إلى نافذة الوحدة.

كود VBA: طباعة جميع الإشارات المرجعية في مستند

Sub ExtractBookmarksInADoc()
'Updated by Extendoffice 20181123
    Dim xRow As Long
    Dim xTable As Table
    Dim xDoc As Document
    Dim xBookMark As Bookmark
    Dim xBookMarkDoc As Document
    Dim xParagraph As Paragraph
    On Error Resume Next
    Set xDoc = ActiveDocument
    If xDoc.Bookmarks.Count = 0 Then
        MsgBox "There is no bookmark in this document", vbInformation, "KuTools for Word"
        Exit Sub
    End If
    Set xBookMarkDoc = Documents.Add
    xRow = 1
    Selection.TypeText "BookMarks in " & "'" & xDoc.Name & "'"
    Set xTable = Selection.Tables.Add(Selection.Range, 1, 3)
    xTable.Borders.Enable = True
    With xTable
        .Cell(xRow, 1).Range.Text = "Name"
        .Cell(xRow, 2).Range.Text = "Texts"
        .Cell(xRow, 3).Range.Text = "Page Number"
        For Each xBookMark In xDoc.Bookmarks
            xTable.Rows.Add
            xRow = xRow + 1
            .Cell(xRow, 1).Range.Text = xBookMark.Name
            .Cell(xRow, 2).Range.Text = xBookMark.Range.Text
            .Cell(xRow, 3).Range.Text = xBookMark.Range.Information(wdActiveEndAdjustedPageNumber)
            xDoc.Hyperlinks.Add Anchor:=.Cell(xRow, 3).Range, Address:=xDoc.Name, _
              SubAddress:=xBookMark.Name, TextToDisplay:=.Cell(xRow, 3).Range.Text
        Next
    End With
    xBookMarkDoc.SaveAs xDoc.Path & "\" & "Bookmarks in " & xDoc.Name
    xBookMarkDoc.PrintOut
    xBookMarkDoc.Close
    Kill xBookMarkDoc.Path
End Sub

3. اضغط على مفتاح F5 لطباعة الإشارات المرجعية مباشرة.

أفضل أدوات زيادة الإنتاجية لمكتبك

Kutools لـ Word - ارتقِ بتجربتك في Word مع أكثر من 100 ميزة رائعة!

🤖 ميزات الذكاء الاصطناعي في Kutools: مساعد الذكاء الاصطناعي / مساعد الوقت الحقيقي / تلميع فائق (يحافظ على التنسيقات) / ترجمة فائقة (يحافظ على التنسيقات) / إخفاء المعلومات باستخدام الذكاء الاصطناعي / التدقيق اللغوي بالذكاء الاصطناعي...

📘 إتقان المستندات: تقسيم الصفحات / دمج المستندات / تصدير النطاق إلى تنسيقات متعددة (PDF/TXT/DOC/HTML...) / تحويل جماعي إلى PDF...

تحرير النص: البحث والاستبدال الجماعي عبر ملفات متعددة / تغيير حجم جميع الصور / تحويل صفوف وأعمدة الجدول / تحويل الجدول إلى نص...

🧹 تنظيف سهل: إزالة المسافات الزائدة / فواصل الأقسام / مربعات النص / الروابط التشعبية / للمزيد من أدوات الإزالة، انتقل إلى مجموعة إزالة...

إدراجات مبتكرة: إدراج الفواصل بالألاف / مربعات اختيار / أزرار راديو / رمز QR / باركود / عدة صور / اكتشف المزيد ضمن مجموعة إدراج...

🔍 تحديدات دقيقة: تحديد صفحات محددة / جداول / أشكال / فقرات عنوان / عزز التنقل بالمزيد من ميزات تحديد النطاق...

تحسينات مميزة: التنقل إلى أي نطاق / إدراج تلقائي للنص المتكرر / التبديل بين نوافذ المستند / 11 أداة تحويل...

🌍 يدعم أكثر من40 لغة: استخدم Kutools بلغتك المفضلة – يدعم الإنجليزية، الإسبانية، الألمانية، الفرنسية، الصينية وأكثر من40 لغة أخرى!

Kutools and Kutools Plus tabs on the Word Ribbon
👉 هل ترغب في تجربة هذه الميزات؟ قم بتنزيل Kutools لـ Word الآن! 🚀
 

✨ Kutools لـ Office – تثبيت واحد، خمس أدوات قوية!

يشمل Office Tab Pro · Kutools لـ Excel · أدوات Kutools لـ Outlook · Kutools لـ Word · Kutools لـ PowerPoint

📦 احصل على جميع الأدوات الخمسة في مجموعة واحدة | 🔗 تكامل سلس مع Microsoft Office | ⚡ وفر وقتك وزد إنتاجيتك فوراً