ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Word > 如何使用VBA删除Word里面所有文本框且保留里面的文字?

如何使用VBA删除Word里面所有文本框且保留里面的文字?

作者:绿色风 分类: 时间:2022-08-18 浏览:196
楼主
wise
Q:如何使用VBA删除Word里面所有文本框且保留里面的文字?
A:ALT+F11→打开VBE模块→新建一个模块并输入以下代码:

  1. Sub test()
  2. Selection.WholeStory
  3. '扩展某一所选内容,使其包括整个文章 。
  4. Set myRange = ActiveDocument.Range(Start:=0, End:=Selection.End)
  5. '该区域的起点位于活动文档的开始处,终点位于光标的位置,然后将该区域内的方块里面的文本框删除,并且保
  6. 留文字。
  7. For Each aWord In myRange.Words
  8. '循环文本框内所有单词
  9.   s = s & aWord.Text
  10. Next
  11. ActiveDocument.Range.Delete
  12. '删除文本方块
  13. Selection.TypeText s
  14. '使用里面的文本来替换选取的内容
  15. End Sub


sample.rar
2楼
wudixin96
77,这么迟还不睡啊
3楼
i彳亍
多谢楼主无私分享**
4楼
beamstone
不对啊,运行时提示“子过程或函数未定义”呢?
5楼
bobowuji8858
原因就在第6行和第7行,将第7行和6合并,或是加个单引号
6楼
0Mouse
  1. Sub 批量删除文档中的所有图文框同时保留其内文本()
  2.     Dim wd, sr As String
  3.     With ActiveDocument.Range
  4.         For Each wd In .Words
  5.           sr = sr & wd.Text
  6.         Next
  7.         .Delete
  8.     End With
  9.     Selection.TypeText sr
  10. End Sub
由于文档内的文本均在图文框内,所以直接循环删除图文框应该也可以。删除图文框后,文字会自动留在主文档内。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap