VBA之Word应用:利用Bookmark属性返回选择区域的开始和结束位置

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

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

本套教程共三册十六章,今日内容为第二章部分:VBA之Word应用第二章:利用Bookmark属性返回选择区域的开始和结束位置6a0bea559747ab2fea451ac11588dfdd.jpeg

分享成果,随喜正能量】 生活就是这样,不要复杂化,不要悲情化,不要脆弱化,别把人生活成一场悲惨新高度,别太为难了自己,学会愉快一些,幽默一些,认清自己不过就是一个100多斤的孩子,许多烦恼就轻松而解了。。

第四节 书签(Bookmark) 对象

所谓书签(Bookmark)对象,是文档中、或者选定内容或区域中的单个书签。我们这讲的内容就是讲解书签的有关知识点,仍是按照属性、方法并结合一些实例来讲解。希望大家进一步认识书签集合及书签。

1 Bookmark.Name 属性

这个属性返回指定对象的名称。是只读的字符串。

语法:expression.Name

其中expression表示一个书签对象

2 Bookmark.Start 属性

这个属性返回或设置书签的起始字符位置。是可读写的 Long

语法:expression.Start

其中:expression代表一个书签对象.

  • 如果此属性的值设置为一个大于End属性的值,那么End属性的设置将调整为和Start属性中的值相同。
  • 书签对象包括起始字符和结束字符位置。起始字符位置为距文档开头部分最近的位置。
  • Bookmark.Start 属性返回起始字符相对于文档开头部分的位置。文本主体部分 (wdMainTextStory) 的起始字符位置为 0(零)。通过设置该属性可以更改书签的大小。

3 Bookmark.End 属性

这个属性返回或设置选定内容、区域的书签结束字符位置。可读写的 Long 。

语法:expression.End

其中expression代表一个书签对象

  • 如果此属性设置为一个值小于Start属性,则Start属性将调整为和End属性相同的值 (即,Start和 End属性相等)。
  • 该属性返回结束字符,是相对于文档开头部分的位置。文档主要文字部分 (wdMainTextStory) 的起始字符位置为 0。通过设置该属性可以更改书签的大小。

4 Bookmark.Range 属性

返回一个 Range 对象,该对象代表指定对象所含的部分文档。

语法:expression.Range

其中expression代表一个书签对象

5 Bookmark.Delete 方法

这种方法将删除指定的书签。

语法:expression.Delete

其中expression代表一个书签对象

6 Bookmark.Select 方法

选择指定书签。

语法:expression.Select

其中expression代表一个书签对象

7 利用Bookmark属性返回选择区域的开始和结束位置

在上面我们学习了关于书签的一些属性和方法,这里我们讲解一个实例,这个实例中我们会首先选择一个书签,然后提示给用户选择区域的开始和结束字符的位置,我们先看下面的代码:

Sub mynzE()

Dim myString As String

myString = "myBookmarkB"

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

ActiveDocument.Bookmarks(myString).Select

MsgBox "选择位置开始于第" & ActiveDocument.Bookmarks(myString).Start & "字符,结束于第" & ActiveDocument.Bookmarks(myString).End & "字符"

End If

End Sub

代码的截图:

efb0c05a0f6776f8f7d37c8b09a80ad3.jpeg

代码讲解:

1) myString = "myBookmarkB" 自定义一个书签

2) If ActiveDocument.Bookmarks.Exists(myString) = True 判断这个书签是否存在。

3) ActiveDocument.Bookmarks(myString).Select 如果这个书签存在,则选择书签

4) MsgBox "选择位置开始于第" & ActiveDocument.Bookmarks(myString).Start & "字符,结束于第" & ActiveDocument.Bookmarks(myString).End & "字符"

这句代码利用了书签的Start和End属性返回书签第一个字符和最后一个字符在文档中的位置。

代码的运行结果:

7a42905ef9aafa56af35ad2c2a34b51b.jpeg

  • 在反馈的结果中,字符的位置和我们视觉看到的有所不同,请大家留意我之后关于段落对象的讲解。

今日内容回向:

1 书签对象的属性和方法有哪些?

2 如何提示给用户选择区域开始字符位置和结束字符的位置?

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

分享成果,随喜正能量

9a39da9c6fdc7d94479c2d40a59100ea.jpeg

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


2a471bf4b42837d22c74a77b5de7ea48.jpeg

165dd49135b2998ed0648311f0c18e95.jpeg

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/469196.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024年新算法:基于牛顿-拉夫逊优化器NRBO的城市三维无人机路径规划(复杂地形三维航迹路径规划)

摘要:本文提出了一种利用牛顿-拉夫逊优化器(Newton-Raphson-based optimizer,NRBO)来解决城市环境下无人机三维路径规划问题的方法。这种方法将复杂的无人机航迹规划任务转化为一个优化问题,然后运用牛顿-拉夫逊优化器…

文件包含漏洞之包含SESSION(CTF题目)

这次使用的环境是ubuntunginxphpmysql 首先四个文件源码在以下链接中: 一道CTF题:PHP文件包含 | Chybeta 我们注册一个用户名111密码111,然后登录查看cookie和linux的session,因为我们的de服务器 是手动搭建的,所以…

论文阅读:Face Deblurring using Dual Camera Fusion on Mobile Phones

今天介绍一篇发表在 ACM SIGGRAPH 上的文章,是用手机的双摄系统来做人脸去模糊的工作。这也是谷歌计算摄影研究组的工作。 快速运动物体的运动模糊在摄影中是一个一直以来的难题,在手机摄影中也是非常常见的问题,尤其在光照不足,…

第十三届蓝桥杯省赛真题 Java C 组【原卷】

文章目录 发现宝藏【考生须知】试题 A: 排列字母试题 B: 特殊时间试题 C: 纸张尺寸试题 D: 求和试题 E : \mathbf{E}: E: 矩形拼接试题 F: 选数异或试题 G: GCD试题 H: 青蛙过河试题 I: 因数平方和试题 J \mathrm{J} J : 最长不下降子序列 发现宝藏 前些天发现了一个巨牛的人…

关于防火墙

文章目录 一、安全技术和防火墙1、安全技术2、防火墙的分类2.1 按保护范围划分2.2 按实现方式划分2.3 按网络协议划分2.3.1 包过滤防火墙2.3.2 应用层防火墙 二、Linux 防火墙的基本认识1、Netfilter2、防火墙工具介绍2.1 Iptables2.2 Firewalld2.2.1 软件包2.2.2 管理工具 2.3…

【超图】白模数据如何与抽屉效果结合,展示白膜内部结构

作者:taco 最近在支持的过程中,客户在看别的项目中,发现白模是可以抽插的。而非单独一个白色模型建筑。那么如何使用SuperMap产品来实现抽插的效果呢?本篇文章结合SuperMap iDesktopX产品以及SuperMap iClient for Cesium产品进行…

大数据开发--01.初步认识了解

一.环境准备 1.使用虚拟机构建至少三台linux服务器 2.使用公有云来部署服务器 二.大数据相关概念 大数据是指处理和分析大规模数据集的一系列技术、工具和方法。这些数据集通常涉及海量的数据,包括结构化数据(如关系型数据库中的表格)以及…

mysql部署(1)单节点安装卸载

以8.0.36版本为例 一、下载安装 1、准备工作 (1)查看系统版本 cat /etc/redhat-release(2)查看是否安装了 MySQL rpm -qa | grep mysql查看是否有安装 mariadb,该软件与 MySQL 数据库有冲突,需要手动卸…

【C++庖丁解牛】继承的概念及定义 | 继承中的作用域 | 继承与友元继承与静态成员 | 复杂的菱形继承及菱形虚拟继承

🍁你好,我是 RO-BERRY 📗 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油 目录 1.继承的概念及定义1.1继…

(2024,EBGAN,扩散,变分近似)通过扩散过程改进基于能量的对抗模型

Improving Adversarial Energy-Based Model via Diffusion Process 公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群) 目录 0. 摘要 2. 相关工作 3. 去噪扩散对抗 EBM 3.1. 具有去噪扩散过程…

JavaScript中a++和++a的区别是什么?

在JS中,a 和 a 都是对变量 a进行自增操作,但是他们在执行的行为和结果上有些不同: a (前缀自增): 首先是将a的值增加1,然后返回 a 增加后的值。这意味着,表达式的其余部分使用 a的时候, a 的值…

人大金仓携手中国大地保险上线核心超A系统

2023年底 中国大地保险 卡园三路59号办公室里 一群技术精英们正忙碌着 他们的眼中闪烁着对即将到来的胜利的期待 这是大地保险超A系统 项目上线的关键时刻 也是通过科技创新 引领行业服务新趋势的一场征程 项目现场 一次颠覆:改变传统保险服务模式 超A平…

微信小程序项目实战遇到的问题

我们以学生成绩平台来作为例子。这是我们想得到的效果。 以下是完整代码: index.js // index.js Page({//页面的初始数据data: {hello: 欢迎进入微信小程序的编程世界,score: 80,userArray: [{name: 张三,score: [66, 77, 86, 70, 90]},{name: 李四,score: [88, 7…

中国传统游戏-幻方-c/c++实现

幻方(Magic Square)是一种将数字安排在正方形格子中,使每行、列和对角线上的数字和都相等的方法。 幻方也是一种中国传统游戏。旧时在官府、学堂多见。它是将从一到若干个数的自然数排成纵横各为若干个数的正方形,使在同一行、同…

由浅到深认识Java语言(2):Java语言概述

该文章Github地址:https://github.com/AntonyCheng/java-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.c…

CSS案例-4.padding导航栏练习

效果 相关数据: 上边框:3px,颜色#ff8500 下边框:1px,颜色#edeef0 背景颜色:#fcfcfc 高度:41px 内边距20px 字体颜色#4c4c4c 知识点 盒子边框border 属性 作用 border-width 定义边框粗细,单位px border-style 边框的样式 border-color 边框颜色 边框样式

拿捏指针(三)

✨✨欢迎👍👍点赞☕️☕️收藏✍✍评论 个人主页:秋邱博客 所属栏目:C语言 (感谢您的光临,您的光临蓬荜生辉) 前言 在这之前我们学习了《拿捏指针(一)》,《拿…

Ansible基本介绍与模块使用

目录 引言 一、Ansible简介 (一)基本概述 (二)主要特点 二、Ansible安装及基本组件 (一)yum安装 (二)编译安装 (三)基本配置信息 1.主配置文件 2.主…

【Linux】自动化构建工具-make/Makefile

个人主页 : zxctscl 如有转载请先通知 文章目录 1. 前言2. 认识make/Makefile3. 了解make/Makefile原理3.1 依赖关系和依赖方法3.2 make检测的顺序3.3 PHONY:XXX 4. makefile内置符号 1. 前言 在上一篇中已经了解了【Linux】编译器-gcc/g使用,这次来一起…

01|模型IO:输入提示、调用模型、解析输出

Model I/O 可以把对模型的使用过程拆解成三块,分别是输入提示(对应图中的Format)、调用模型(对应图中的Predict)和输出解析(对应图中的Parse)。这三块形成了一个整体,因此在LangCha…