【WPS】【WORDEXCEL】【VB】实现微软WORD自动更正的效果
1. 代码规范方面
- 添加
Option Explicit:强制要求显式声明所有变量,这样可以避免因变量名拼写错误等情况而出现难以排查的逻辑错误,提高代码的健壮性。 - 使用
On Error GoTo进行错误处理:通过设置错误处理机制,当代码执行过程中出现错误时,能够跳转到指定的错误处理代码段(ErrorHandler标签处),在那里可以进行合适的处理,比如弹出错误提示消息框告知用户错误信息,同时尽量释放已经占用的资源(如关闭 Excel 相关对象),避免因错误导致程序异常退出而留下资源占用等问题。
2. 查找替换操作细化方面
- 使用
With语句设置Find对象属性:在进行查找替换操作时,使用With语句可以更简洁清晰地对Find对象的多个属性进行设置,包括设置查找文本(.Text)、替换文本(.Replacement.Text)以及其他如查找方向(.Forward)、超出范围处理方式(.Wrap)、是否查找格式(.Format)以及匹配相关的属性(.MatchCase、.MatchWholeWord、.MatchWildcards等)。这样代码结构更加清晰,便于理解和后续维护,同时可以方便地根据实际需求调整这些查找替换的具体规则。
Option Explicit '强制要求显式声明变量,避免因变量名拼写错误等导致的潜在问题Sub ReplaceWithExcelData()'定义常量,确保替换方式常量正确定义Const wdReplaceAll = 2Const wdMatchCase = False '设置查找时不区分大小写,可根据实际需求调整Const wdMatchWholeWord = False '设置不要求全字匹配,可根据实际需求调整Const wdMatchWildcards = False '设置不使用通配符匹配,可根据实际需求调整Dim xlApp As ObjectDim xlBook As ObjectDim xlSheet As ObjectDim wordRange As RangeDim i As LongDim findText As StringDim replaceText As StringOn Error GoTo ErrorHandler '设置错误处理,当出现错误时跳转到ErrorHandler标签处执行错误处理代码'创建Excel应用程序对象并打开工作簿Set xlApp = CreateObject("Excel.Application")xlApp.Visible = False '设置Excel不可见,可根据需求调整为True查看Excel操作情况Set xlBook = xlApp.Workbooks.Open(ThisDocument.Path & "\1.xlsx") '根据实际路径调整,这里假设同文件夹Set xlSheet = xlBook.Sheets(1) '假设数据在第一个工作表,如果不是需修改索引Set wordRange = ActiveDocument.Content '针对整个文档内容进行查找替换操作,可按需修改范围,比如仅针对选中部分等For i = 1 To 1000 '假设你的数据范围是A1:B10,共10行,如果实际更多或更少要相应修改findText = Trim(xlSheet.Cells(i, 1).Value) '去除两端空格replaceText = Trim(xlSheet.Cells(i, 2).Value)With wordRange.Find '使用With语句简化对Find对象属性的设置.Text = findText.Replacement.Text = replaceText.Forward = True '设置查找方向为向前,一般默认也是向前,可根据需求调整.Wrap = wdFindContinue '设置查找范围超出文档末尾时的处理方式.Format = False '不查找格式,只查找文本内容,可根据需求调整.MatchCase = wdMatchCase '应用不区分大小写的设置.MatchWholeWord = wdMatchWholeWord '应用不要求全字匹配的设置.MatchWildcards = wdMatchWildcards '应用不使用通配符匹配的设置.Execute Replace:=wdReplaceAllEnd WithNext i'正常执行完后关闭Excel相关对象释放资源xlBook.Close SaveChanges:=False '关闭Excel文件,不保存更改(如果需要保存更改可设为True)xlApp.QuitSet xlSheet = NothingSet xlBook = NothingSet xlApp = NothingExit Sub '正常退出程序,避免进入错误处理代码块后继续执行后面的代码ErrorHandler:MsgBox "程序出现错误,错误信息:" & Err.Description, vbCritical '弹出错误消息框显示错误信息'如果出现错误,也要尽量关闭Excel相关对象释放资源,避免资源占用On Error Resume Next '忽略下面代码可能出现的错误,确保资源释放代码执行xlBook.Close SaveChanges:=FalsexlApp.QuitSet xlSheet = NothingSet xlBook = NothingSet xlApp = NothingOn Error GoTo 0 '恢复正常的错误处理机制
End Sub
3. 测试
- 1.xlsx文件如下:

- 2-副本.docm文件如下:



相关文章:
【WPS】【WORDEXCEL】【VB】实现微软WORD自动更正的效果
1. 代码规范方面 添加 Option Explicit:强制要求显式声明所有变量,这样可以避免因变量名拼写错误等情况而出现难以排查的逻辑错误,提高代码的健壮性。使用 On Error GoTo 进行错误处理:通过设置错误处理机制,当代码执行…...
Attention计算中的各个矩阵的维度都是如何一步步变化的?
在Transformer模型中,各个矩阵的维度变化是一个关键的过程,涉及到输入、编码器、解码器和输出等多个阶段。以下是详细的维度变化过程: 输入阶段 输入序列:假设输入序列的长度为seq_len,每个单词或标记通过词嵌入&…...
【数模学习笔记】插值算法和拟合算法
声明:以下笔记中的图片以及内容 均整理自“数学建模学习交流”清风老师的课程资料,仅用作学习交流使用 文章目录 插值算法定义三个类型插值举例插值多项式分段插值三角插值 一般插值多项式原理拉格朗日插值法龙格现象分段线性插值 牛顿插值法 Hermite埃尔…...
探索 C++ 与 LibUSB:开启 USB 设备交互的奇幻之旅
一、引言 在当今数字化时代,USB(通用串行总线)设备无处不在,从常见的 U 盘、鼠标、键盘,到复杂的工业数据采集设备、医疗监测仪器等,它们以方便快捷的插拔式连接,为人们的生活和工作带来了极大…...
二、模型训练与优化(4):模型优化-实操
下面我将以 MNIST 手写数字识别模型为例,从 剪枝 (Pruning) 和 量化 (Quantization) 两个常用方法出发,提供一套可实际动手操作的模型优化流程。此示例基于 TensorFlow/Keras 环境,示范如何先训练一个基础模型,然后对其进行剪枝和…...
3D可视化产品定制,应用于哪些行业领域?
3D可视化定制服务已广泛渗透至众多行业领域,包括汽车、家居、时尚鞋服、珠宝配饰以及数码电器等: 汽车行业: 借助Web全景技术与3D模型,我们高保真地再现了汽车外观,为用户带来沉浸式的车型浏览体验。用户可在展示界面自…...
Avalonia 入门笔记(零):概述
Avalonia 是一个基于 .NET 和 Skia 的开源、跨平台 UI 框架,支持 Windows、Linux、macOS、iOS、Android 和 WebAssembly。Skia 是一个基于 C 的开源 2D 渲染引擎,Avalonia 通过 Skia 自绘 UI 控件,保证在全平台具有一致的观感 基于 .NET 的跨…...
Unity TextMesh Pro入门
概述 TextMesh Pro是Unity提供的一组工具,用于创建2D和3D文本。与Unity的UI文本和Text Mesh系统相比,TextMesh Pro提供了更好的文本格式控制和布局管理功能。 本文介绍了TMP_Text组件和Tmp字体资产(如何创建字体资产和如何解决缺字问题),还有一些高级功…...
[论文阅读] (35)TIFS24 MEGR-APT:基于攻击表示学习的高效内存APT猎杀系统
《娜璋带你读论文》系列主要是督促自己阅读优秀论文及听取学术讲座,并分享给大家,希望您喜欢。由于作者的英文水平和学术能力不高,需要不断提升,所以还请大家批评指正,非常欢迎大家给我留言评论,学术路上期…...
12 USART串口通讯
1 串口物理层 两个设备的“DB9接口”之间通过串口信号建立连接,串口信号线中使用“RS232标准”传输数据信号。由于RS232电平标准的信号不能直接被控制器直接识别,所以这些信号会经过“电平转换芯片”转换成控制器能识别的“TTL校准”的电平信号ÿ…...
CF 368A.Sereja and Coat Rack(Java实现)
问题分析 简而言之,小明要邀请m个绅士到家,家里有n个挂衣钩,一个挂衣钩要支付i元,如果挂衣钩不够了就要给每个绅士赔d元 思路分析 所以思路就很清楚了,获取n,d,m的值,并用数组存放每…...
清华大学、字节跳动等单位联合发布最新视觉语言动作模型RoboVLMs
近年来,视觉语言基础模型(Vision Language Models, VLMs)大放异彩,在多模态理解和推理上展现出了超强能力。现在,更加酷炫的视觉语言动作模型(Vision-Language-Action Models, VLAs)来了&#x…...
网络安全、Web安全、渗透测试之笔经面经总结
本篇文章涉及的知识点有如下几方面: 1.什么是WebShell? 2.什么是网络钓鱼? 3.你获取网络安全知识途径有哪些? 4.什么是CC攻击? 5.Web服务器被入侵后,怎样进行排查? 6.dll文件是什么意思,有什么…...
.NET Core NPOI 导出图片到Excel指定单元格并自适应宽度
NPOI:支持xlsx,.xls,版本>2.5.3 XLS:HSSFWorkbook,主要前缀HSS, XLSX:XSSFWorkbook,主要前缀XSS,using NPOI.XSSF.UserModel; 1、导出Excel添加图片效果࿰…...
python bs4 selenium 查找a href=javascript:();的实际点击事件和url
在使用 BeautifulSoup 和 Selenium 时,处理 href"javascript:;" 的链接需要一些额外的步骤,因为这些链接不直接指向一个 URL,而是通过 JavaScript 代码来执行某些操作。这可能包括导航到另一个页面、触发模态窗口、显示/隐藏内容等…...
三 BH1750 光感驱动调试1
一 扫描设备 查看手册 BH1750 光感模块 寄存器地址为 0x23 官方手册 : http://rohmfs.rohm.com/en/products/databook/datasheet/ic/sensor/light/bh1750fvi-e.pdf su 然后用 i2cdetect 扫描设备: 拨,插 对比, 探测设备挂载在 /dev/i2c-5 上, 从设备地址为 0x23 二 …...
UE材质节点Fresnel
Fresnel节点 ExponentIn 控制边缘透明度 BaseReflectFractionIn 控制中心透明度...
linux的大内核锁与顺序锁
大内核锁 Linux大内核锁(Big Kernel Lock,BKL)是Linux内核中的一种锁机制,用于保护内核资源,以下是关于它的详细介绍: 概念与作用 大内核锁是一种全局的互斥锁,在同一时刻只允许一个进程访问…...
用户注册模块用户校验(头条项目-05)
1 用户注册后端逻辑 1.1 接收参数 username request.POST.get(username) password request.POST.get(password) phone request.POST.get(phone) 1.2 校验参数 前端校验过的后端也要校验,后端的校验和前端的校验是⼀致的 # 判断参数是否⻬全 # 判断⽤户名是否…...
面向对象的基本概念
本篇,来介绍面向对象的基本概念。 1 面向过程与面向对象 面向过程与面向对象,是两种不同的编程思想。 1.1 面向过程 面向过程的思路,是按照问题的解决步骤,将程序分解为一个个具体的函数或过程,然后依次调用这些函数来实现程序的功能。 面向对象的程序设计,程序的执行…...
Globe.gl性能优化秘籍:如何高效处理大规模卫星数据可视化
Globe.gl性能优化秘籍:如何高效处理大规模卫星数据可视化 【免费下载链接】globe.gl UI component for Globe Data Visualization using ThreeJS/WebGL 项目地址: https://gitcode.com/gh_mirrors/gl/globe.gl Globe.gl是一个基于ThreeJS/WebGL的3D地球数据可…...
SQLMesh表对比功能:如何在开发和生产环境间进行数据差异分析
SQLMesh表对比功能:如何在开发和生产环境间进行数据差异分析 【免费下载链接】sqlmesh Scalable and efficient data transformation framework - backwards compatible with dbt. 项目地址: https://gitcode.com/gh_mirrors/sq/sqlmesh SQLMesh的表对比功能…...
定义适应度函数,也就是我们要算的总能耗,越小越好
基于粒子群优化算法的地表水源热泵机组优化调度 以水源热泵机组角度对地表水源热泵系统建模, 并采用粒子群优化算法优化算法求解热泵机组每小时最佳制冷量和制热量最近帮朋友做了个小区地表水源热泵的调度优化项目,一开始以为就是调调空调温度࿰…...
5KW MPPT控制器-太阳能系统用STM32F103RCT6主控平台
5KW MPPT控制器太阳能控制器 主控平台:STM32F103RCT6 逆变拓扑:BUCK-BOOST 功能:高效率MPPT控制器;支持给200V电池充电;485通讯,在线升级; 描述:本方案为AD格式原理图,PC…...
别再手动排列了!用Python的permutations()函数3行代码搞定商品组合推荐
电商组合推荐新思路:用Python permutations()实现智能商品搭配 每次大促活动前,电商运营团队最头疼的就是如何设计吸引眼球的商品组合。传统人工排列不仅效率低下,还容易遗漏优质搭配方案。其实Python标准库中的itertools.permutations()函数…...
Zotero Reference:重新定义学术文献管理效率的开源工具
Zotero Reference:重新定义学术文献管理效率的开源工具 【免费下载链接】zotero-reference PDF references add-on for Zotero. 项目地址: https://gitcode.com/gh_mirrors/zo/zotero-reference 一、5大核心价值:为什么Zotero Reference是研究者的…...
30 分钟搞定答辩 PPT!Paperxie AI 神器,终结本科生的熬夜改稿噩梦
paperxie-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AIPPThttps://www.paperxie.cn/ppt/createhttps://www.paperxie.cn/ppt/create 一、答辩 PPT,真的没必要熬到凌晨三点 “论文终于写完了!”—— 当你以为能松口气时,答辩…...
告别暴力搜索!用DiffDock的扩散模型5分钟搞定分子对接,效率提升12倍
5分钟颠覆传统:DiffDock如何用扩散模型重构分子对接效率天花板 在药物研发的漫长链条中,分子对接就像一把精准的钥匙开锁过程——需要找到小分子配体与靶标蛋白最契合的三维结合方式。传统方法如同盲人摸象,耗费数小时在亿万种可能中暴力搜索…...
ComfyUI-Impact-Pack:3个强力方案解锁AI图像创作新维度
ComfyUI-Impact-Pack:3个强力方案解锁AI图像创作新维度 【免费下载链接】ComfyUI-Impact-Pack Custom nodes pack for ComfyUI This custom node helps to conveniently enhance images through Detector, Detailer, Upscaler, Pipe, and more. 项目地址: https:/…...
手把手教你用Python的basemap标注旅行足迹(含常见安装问题解决)
用Python绘制个性化旅行地图:从安装到创意标记全指南 每次翻开相册,那些泛黄的机票和模糊的景点门票总让我想起走过的路。但有没有更科技感的方式记录旅行足迹?今天我们就用Python的basemap工具,把你的旅行故事变成一幅交互式世界…...
