VBA摘取Word图形(Shapes)内文字

使用VBA处理Word文档时,无法通过paragraphs获取形状内的文字。通过遍历文档中的所有Shapes,使用Select(形状序号).TextFrame.TextRange.Text读取并累加文字。适用于批量处理含有形状信息的Word文档。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

要解决的问题:

在使用VBA抓取Word文档内容时发现存放在形状里的文字是不能通过paragraphs读到的。如下图所示:

笔者要处理的大批Word文档的样式模板,箭头所指即存有作者信息的四边形解决思路

  1. 定义一个累加器用来存储本篇Doc文档内读出来的所有字符串
  2. for循环遍历文档内所有的形状(Shapes)
  3. 每遍历到一个就用.Select(形状序号).TextFrame.TextRange.Text读出来,赋值到字符串累加器里
  4. 完成对当前文档所有形状内字符串的遍历,全部内容已存入累加器。
  5. 打印出来或者进行下一步的文本处理

上代码

Sub test()

Dim d As Document
Dim i As Long
rem 形状名
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值