使用VBA如何无需Selection对象获取Word文档中Field的范围
无需Selection对象获取Field范围的方法
完全可以不用操作Selection对象实现需求,Word VBA的Field对象本身内置Range属性,直接访问即可拿到对应字段的范围,不需要走选中字段、读取选区、恢复原选区的冗余流程,还能避免修改用户当前选中状态。
优化后代码
Dim Fld as Field '... 省略其他原有代码 ... ' 直接获取Field对应范围无需操作Selection Debug.Print Fld.Range.Paragraphs(1).Range.Text
补充说明
- 若需要单独存储字段对应的范围对象,直接赋值即可:
Set Rng = Fld.Range - 该方案执行效率远高于操作Selection对象,也不会触发任何选区变动相关的事件
内容的提问来源于stack exchange,提问作者milevyo
相关产品推荐
相关产品推荐

