vba - 自动使文本框(形状)适合 Word 文档中的文本
问题描述
为了给出我的问题的上下文,我必须使用带有文本框的文档,这些文本框几乎一直隐藏整个句子,所以我必须手动调整文本框的大小以使文本可见。问题是在某些文档上有超过 700 个文本框。后来我发现我可以做到这一点(调整形状以适应 EN 中的文本):
所以我想知道是否有一种方法可以选择所有文本框并使用 VBA 自动调整它们的大小。谢谢 !
编辑
所以我试图开始我的代码:
Dim eShape As Word.shape
Dim i As Long
For i = ActiveDocument.Shapes.Count To 1 Step -1
Set eShape = ActiveDocument.Shapes(i)
然后我通过检查对象类型来开始条件,在这种情况下是 TextBox
If eShape.Type = msoTextBox Then
但对于其余部分,我没有找到调整元素大小的方法。
解决方案
向萨塔纳斯致敬,
从几个站点周围的各种代码中组装而成:
Sub AllTextBoxesAutoSize()
Dim MyShape As Shape
For Each MyShape In ActiveDocument.Shapes
If MyShape.Type = msoTextBox Then
MyShape.TextFrame.AutoSize = True
End If
Next
MsgBox ("All text boxes autosized!")
End Sub
我添加了 MsgBox,因为否则任何事情都不会发生 :-)
好勇气!
史蒂夫
@TimothyRylatt 如果您不想提供帮助,请滚动浏览。
推荐阅读
- bazel - 没有办法告诉 bazel 列出所有目标而不构建或测试它们
- python - 我希望图片是与python中的助记符相连的一张大图
- birt - Eclipse 4.8 中的 BIRT 如何将多个页码作为页脚?
- javascript - 如何用 puppeteer 刮取 img src?
- java - Spring Boot + Thymeleaf:Summernote 编辑器使我在卡片中的文本显示比需要的低很多
- c# - Crystal Reports 在 Azure 云服务中引发数据库登录失败错误
- javascript - 替换字符串中的所有“\/”
- php - 在 Eloquent 中为每个模型添加关系计数
- haproxy - 带有动态服务器模板的 Cookie 前缀
- rest - 使用方法 auth Yodlee API