VBA之Word应用第二章:判断某个书签是否存在

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

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

本套教程共三册十六章,今日内容为第二章部分:VBA之Word应用第二章:判断某个书签是否存在

分享成果,随喜正能量】 有时揣着糊涂装明白,有时揣着明白装糊涂。不诚实,终究折磨的是自己。有些人受恩惠久了,容易从最初的感激,变成理所当然,而偶尔的相助,反而会让他记得一辈子。。

第三节 书签集合(Bookmarks)对象(二)

大家好,我们继续文档书签集合的讲解,大家在学习的时候要注意对对象、属性、方法的概念的理解,从而能更加深入地理解VBA。

这讲将就一个实例来分析讲解书签集合对象属性和方法的利用。这个实例中会用到在上一讲中已经添加的书签"myBookmarkB",这一节中会利用代码来判断这个书签是否存在,如果存在,将选择这个书签所在的范围。

1 判断某个书签是否存在的代码

为了判断文档中某个书签是否存在,我们首先看下面的代码,这段代码中我有一行屏蔽了的代码,也是一种实用方法的利用,我们在后面的讲解中会提到。

Sub mynzD()

Dim myString As String

myString = "myBookmarkB"

If ActiveDocument.Bookmarks.Exists(myString) = True Then

'ActiveDocument.Bookmarks.Item(myString).Select

ActiveDocument.Bookmarks(myString).Select

End If

End Sub

代码截图:

2 判断书签是否存在代码的讲解

我们对上面代码进行讲解:

1)ActiveDocument.Bookmarks.Exists(myString)=True 这行代码是利用Bookmarks对象的Exists方法来判断myString变量所代表的书签是否存在。这个变量在代码中已经被赋值为"myBookmarkB"。这种方法的返回值中True是指存在,False代表不存在。

2)ActiveDocument.Bookmarks(myString).Select 选择这个书签表示的区域。我们可以参考一下在上一讲我们添加书签的过程。

  1. 'ActiveDocument.Bookmarks.Item(myString).Select 这句代码我在程序中是屏蔽了的,其实这句代码是上面ActiveDocument.Bookmarks(myString).Select的另外一种写法,这种写法是利用了Bookmarks.Item方法返回书签对象。
  • Bookmarks.Item方法,这个方法将返回集合中的单个Bookmark对象。

语法:expression.Item (Index)

参数:Index 必需 Variant 要返回的单个对象。 可以是Long 类型的值, 指示序号位置或代表单个对象的名称的字符串。

3 判断书签是否存在代码的运行

下面来看代码的运行,为了运行代码,在文档界面点击"宏",在弹出的对话窗口中选择要运行的宏名,最后点击运行:

代码的运行结果:

从上述运行结果看,整个书签的范围被选中了。和我们在添加书签时的意图是一样的。从而完成了对书签有无的判断及对书签的选择。

今日内容回向:

1 判断某个书签是否存在利用了书签集合的什么方法?

2 Exists方法的返回值是什么?

3 如何选择书签所表示的区域?

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

分享成果,随喜正能量

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

相关推荐
code_pgf9 小时前
Jetson Orin NX 16G设备上配置AI服务自动启动的方案,包括Ollama、llama-server和OpenClaw Gateway三个组件
数据库·人工智能·安全·gateway·边缘计算·llama
七夜zippoe9 小时前
边缘计算:Python在IoT中的应用
python·物联网·esp32·边缘计算·iot
智驱力人工智能10 小时前
馆藏文物预防性保护依赖的图像分析技术 文物损害检测 文物破损检测 文物损害识别误报率优化方案 文物安全巡查AI系统案例 智慧文保AI监测
人工智能·算法·安全·yolo·边缘计算
柯儿的天空11 小时前
边缘计算与AI部署优化技术分析:从云端到边缘的智能化演进
人工智能·gpt·aigc·边缘计算·ai编程·ai写作·agi
视***间11 小时前
算力下沉,智赋全域——解析当前AI边缘计算形势及视程空间的使命与征程
人工智能·边缘计算·ai算力·视程空间·终端算力
智驱力人工智能12 小时前
一盔一带AI抓拍系统能否破解非机动车执法取证难 骑行未戴头盔检测 电动车未戴头盔智能监测 摩托车头盔佩戴AI识别系统 边缘计算实时处理
人工智能·算法·yolo·目标检测·边缘计算
code_pgf1 天前
Jetson Orin NX 16G部署llama.cpp框架(5090微调模型)
边缘计算·llama
步步为营DotNet1 天前
解锁.NET 11 边缘计算潜力:基于Blazor与Native AOT的边缘应用开发
人工智能·.net·边缘计算
Yeats_Liao2 天前
华为开源自研AI框架昇思MindSpore应用案例:WaveNet实现音乐生成
人工智能·深度学习·算法·机器学习·边缘计算
lisw054 天前
用于实时数据处理的边缘计算!
人工智能·机器学习·边缘计算