ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 794|回复: 14

word的VBA操作:提取有审核意见的段落并原样显示在窗体中

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-9-11 17:01 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 ztj277702035 于 2023-9-11 17:11 编辑

我需要从可能好几百页的word文档中提取审批意见生成新的审批表。现在遇到的困难是:如何将有审批意见的段落内容原样显示在窗体中,以便进行手工提取、编辑。
如果能将制定文档显示在窗体里,然后按页定位也行
现求教于群里。

求教.rar

28.46 KB, 下载次数: 11

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-9-11 17:08 | 显示全部楼层
本帖最后由 ztj277702035 于 2023-9-11 17:15 编辑

误传,删除不了。此贴与https://club.excelhome.net/thread-1672435-1-1.html为同一内容,特此标记。

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-9-12 11:19 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2023-9-13 10:16 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
可以实现,但需要指出修订标记和批注,在word里面不是一样东西。
在修订标注接受之前,其实还在文档range里面,可以通过revisions集合找到所有修订标记,用comments集合找到所有批注。

TA的精华主题

TA的得分主题

发表于 2023-9-13 10:23 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-9-13 15:12 | 显示全部楼层
@strkong
找出修订和批注,我已经做得到了
就是最终要的结果,需要对照原文才好。因此来寻求帮助的

TA的精华主题

TA的得分主题

 楼主| 发表于 2023-9-13 15:14 | 显示全部楼层
zhanglei1371 发表于 2023-9-13 10:23
涉及到做窗体,就是体力活了。

给个思路和涉及的函数、方法、属性名,我自己来按指导做体力活也可以

TA的精华主题

TA的得分主题

发表于 2023-9-13 17:23 | 显示全部楼层
ztj277702035 发表于 2023-9-13 15:14
给个思路和涉及的函数、方法、属性名,我自己来按指导做体力活也可以

带娃没啥时间,写了一半
个人觉得思路和架构还是比较清晰的,我思路大致如下:
1. 通过revision.type判断修订是哪种;
2. 把修订部分及修订后的整个段落找出来;
3. 标记修订前后range的start和end属性;
4. 然后把修订前的range替换到修订后的range,得到未修订前的整个段落
5. 然后把还原的text放入你窗体textbox.text里面

TA的精华主题

TA的得分主题

发表于 2023-9-13 19:13 | 显示全部楼层
本帖最后由 batmanbbs 于 2023-9-13 19:27 编辑

没有接触过修订和注释,也不敢说了解楼主的目的。根据上面的讨论,我不知道我的想法是否符合楼主意图。

如果楼主只要原始的段落内容(未修订前的段落内容),我觉得应该比较简单:
1.复制一份文档(在复制文档上操作)
2.遍历修订,记录修订的段落在文档中的位置
3.删除重复的段落位置(因为可能对一个段落进行多次修订),也可在遍历修订时就进行过滤
4.拒绝所有修订,这时我觉得应该就是没有修订过的段落内容(具体未做测试)
5.然后该干嘛干嘛

不太了解修订,随口一说,如果有问题请指正,也好学习进步
PS:上面记录修订段落的位置还有一种方法,就是遍历所有段落,然后判断该段落是否有修订,有就记录段落位置,拒绝修订。不过,如果修订内容不多,应该速度相对来说慢一些。

TA的精华主题

TA的得分主题

发表于 2023-9-13 21:51 来自手机 | 显示全部楼层
本帖最后由 zhanglei1371 于 2023-9-14 07:24 编辑
ztj277702035 发表于 2023-9-13 15:14
给个思路和涉及的函数、方法、属性名,我自己来按指导做体力活也可以
原样显示太复杂,至少需要富文本控件richtextbox,普通的textbox仅能显示无格式文本。
简单做法就是浏览包含批注的段落,只需遍历每个段落放入数组。点击按钮加载数组中的纯文本内容。
当然,若希望完全达到一样的效果,还有个复杂的思路:
那就是设置一个副本文档。用api嵌入到当前窗体里。把数组段落放到副本文档再加载显示。
估计这个你做不来。

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 03:23 , Processed in 0.047453 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表