vba - 复制形状 Type = msoTextBox 然后粘贴
问题描述
我正在尝试使用带有 Word 的 VBA 将文本框形状转换为图像。我找不到如何使用 VBA 执行此操作,当我尝试录制宏时,我无法选择文本框。我用来查找文本框的代码是对形状集合的反向搜索,使用过滤器仅选择文本框,然后返回形状索引号。我最初的想法是简单地剪切形状并粘贴回图像
欢迎任何建议
解决方案
当我尝试手动执行并录制宏时,我无法选择形状。这是我以前从未遇到过的行为。使用以下代码,我能够复制所需的形状。但是,生成的图像的纵横比发生了变化,并且 type = msoTextBox 的文本被截断。小组工作得很好。[VBA] 子 ShapeCopy()
Dim i As Integer, Shp As Shape
' Select last to first to retain shape numbering
' when shapes are deleted
For i = ActiveDocument.Shapes.Count To 1 Step -1
Set Shp = ActiveDocument.Shapes(i)
Shp.Select
If Shp.Type = msoTextBox _
Or Left(Shp.Name, 5) = "Group" Then
Selection.Cut
Selection.PasteSpecial Link:=False, DataType:=wdPasteEnhancedMetafile, _
Placement:=wdInLine, DisplayAsIcon:=False
End If
Next i
End Sub
[/VBA]
推荐阅读
- sql-server - Power Automate、SQL Server 行更新
- javascript - 为什么我多次看到同一个域的本地存储?
- mule - 何时使用垂直和水平缩放?
- android - 在Android中的Adobe PDFBox中居中裁剪图像?
- google-sheets - 有没有办法使用“arrayormula”对 muptible 行进行计算?
- python - 计算python中新记录的滚动计数
- javascript - 点击汉堡图标后如何给导航栏列表元素添加过渡效果
- sql-server - 代码执行后无法连接数据库
- python - Python Plotly Dash: How to display different data for the different users?
- javascript - Bundletransformer.yui 不会混淆 bundle js