ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Word > 如何使用WORD VBA获取word文档中的嵌入型文本框占用的range位置

如何使用WORD VBA获取word文档中的嵌入型文本框占用的range位置

作者:绿色风 分类: 时间:2022-08-18 浏览:208
楼主
xmyjk
Q:如何使用WORD VBA获取word文档中的嵌入型文本框占用的range长度?
对于插入的文本框把它的版式设置为嵌入型的,那么它就嵌入到了文档中了,想获得这个文本框占用的Range的位置

 
A:可以用三种办法
1、利用selection
  1. Option Explicit

  2. Sub test1()
  3.     Dim sp As Shape

  4.     For Each sp In ActiveDocument.Shapes
  5.        sp.Select '选定文本框
  6.        Debug.Print Selection.Range.Start, Selection.Range.End '输入其占用起始和终止位置。
  7.     Next
  8. End Sub
2、利用Anchor.Words.First的相关属性
  1. Option Explicit

  2. Sub test1()
  3.     Dim sp As Shape

  4.     For Each sp In ActiveDocument.Shapes
  5.         Debug.Print sp.Anchor.Words.First.Start, sp.Anchor.Words.First.End
  6.     Next
  7. End Sub
3、运用Anchor.Words(x)的相关属性
  1. Option Explicit

  2. Sub test1()
  3.     Dim sp As Shape

  4.     For Each sp In ActiveDocument.Shapes
  5.         Debug.Print sp.Anchor.Words(1).Start, sp.Anchor.Words(1).End
  6.     Next
  7. End Sub
2楼
千年一梦遥
师傅的好料真多!
3楼
BianChengNan
哈哈,强力支持啊!以后要多发现问题,让版主解决啊
4楼
chenlifeng
妃师祖:
1、如何显示文本框在word中的行位置呢?如是在第4行?

2、另外,如何按行数的大小顺序,来逐一显示文件框的内容?即:
   有人建立了很多文本框,但实际并不是按建立的时间顺序来排序,东排一个西排一个,我想按word文档从前到尾的顺序,一行一行地,用VBA逐一查看,如何写代码?(可能文本框的位置与word的行有点不一样,但有一点能肯定是:它的位置不是在某一行上,就是在某两行的中间,所以也是能按顺序来查阅文本框的)

免责声明

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

评论列表
sitemap