VBA之Word应用:利用代码统计文档中的书签个数

发布时间:2023年12月20日

《VBA之Word应用》(版权10178982),是我推出第八套教程,教程是专门讲解VBA在Word中的应用,围绕“面向对象编程”讲解,首先让大家认识Word中VBA的对象,以及对象的属性、方法,然后通过实例让大家感受到Word VBA 的妙处。

 这套教程是专门针对WORD VBA 的教程,是VBA中的稀缺资源,我给这套教程分归为中级教程,希望大家在VBA入门后再学习这套教程,这样会更加深入的理解面向对象编程的意义。

本套教程共三册十六章,今日内容为第二章部分:VBA之Word应用:利用代码统计文档中的书签个数1d629fb0625abf383a37b8ab06b23f18.jpeg

【分享成果,随喜正能量】心无挂碍,尽情享受当下便好。世事浮云何足问,不如高卧且加餐。生活中一切事,放平心态,不纠结、不执着,从容潇洒的走过,也是一种难得的人生智慧。。

第一节文档(Document)的书签

2利用代码统计文档中的书签个数

代码示例:下面的代码将提取当前文档中所有的书签,并提示给用户。

Sub mynz() '显示书签

    Dim A()

    Dim mybookmark As Bookmark

    If ActiveDocument.Bookmarks.Count >= 1 Then

        ReDim A(ActiveDocument.Bookmarks.Count - 1)

        i = 0

        For Each mybookmark In ActiveDocument.Bookmarks

            A(i) = mybookmark.Name

            uu = uu & " " & A(i)

            i = i + 1

        Next

    End If

    MsgBox "当前文档中的书签有:" & Chr(13) & uu

End Sub

代码截图:

14e4c0542b9e7027ecda63fe1642994e.jpeg

3统计书签个数代码的讲解及测试

1)Dim A()定义一个动态数组记录书签名

2) Dim mybookmark As Bookmark定义书签变量

3) ActiveDocument.Bookmarks.Count当前文档书签的个数

4) ReDim A(ActiveDocument.Bookmarks.Count - 1)给数组扩容

5) For Each mybookmark In ActiveDocument.Bookmarks

            A(i) = mybookmark.Name

            uu = uu & " " & A(i)

            i = i + 1

        Next

End If

以上遍历所有书签,并将书签放在数组中,同时提取数据的名称。

6) MsgBox "当前文档中的书签有:" & Chr(13) & uu

提示给用户书签的所有名称。

代码的运行测试:

1)在当前文档中“Doc 002文件”中的书签如下截图:

c79f3d9a87a72f226da779dfe8ebaf55.jpeg

截图可以看出,一共是四个书签,我们运行程序:

0b6dbbc393069dcd70c57d5dcd71995d.jpeg

3)运行结果:

6e46777e4821add781deeadec0914713.jpeg

可见,程序的运行结果和我们期望是一致的。

4在文档中显示书签

为了下面内容讲解的方便,我要在文档中显示已经添加的书签。为了显示书签,可以采用下面的步骤,在“选项”窗口,找到“显示文档内容”,勾选“显示书签”

eccf835ff529189d14cfe5af15cf81b2.jpeg

这个时候我们就可以在文档中显示书签了:

0b4433016d5399600fb7fca4733fbfda.jpeg

今日内容回向:

  1 文档的书签属性意义是什么?

2如何统计书签的个数?

   3 如何显示书签?

本讲内容参考程序文件:Doc 002文档.docm

分享成果,随喜正能量

a29499d0e41acfc97cf149a12081db2a.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程及应用工具中:


1611945d91280f80b7189eb5902a53a5.jpeg

c7f0232149248df47eb0faf42e27d08c.jpeg

文章来源:https://blog.csdn.net/VBA6337/article/details/135091768
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。