excel - 如何使用 VBA 将 Microsoft Word 公式导入 Microsoft Excel?

标签 excel vba ms-word

我一直在寻找从 Microsoft Word 2010 移动图片、表格和其他东西的方法。至Microsoft Excel 2010 .我想找到一种方法是对 OMath 做同样的事情。对象或方程式。我想尽可能保持方程的原始形式,所以如果这意味着翻译 OMath反对图片( InlineShape ),那么这就是我想要做的。

这是公式在 Word 中的样子,我想使用 VBA 将其导入到 excel 中:
enter image description here

现在,我只能传输这个对象的 Range.Text 表示,这使得这个方程看起来像这样:

enter image description here

我发现我可以选择这个对象并进行选择副本。有没有办法确定这个选择的尺寸?我想将其粘贴到已调整大小以适合方程式的特定单元格中。我循环浏览 Word 文档的段落,每个段落称为 DocPara当我遇到一个等式时,我会像这样选择它:

DocPara.Range.OMaths(1).Range.Select
With Selection
    .CopyAsPicture
    oWB.ActiveSheet.Paste Destination:=oWB.ActiveSheet.Cells(headingCount, 3)
End With

我上面的问题是图片粘贴在我想要的位置,但比它所在的行大,如果我调整行的大小,图片会随着行调整大小而垂直线性拉伸(stretch)。在粘贴之前,我需要调整要粘贴此图像的行的大小。如何访问我刚刚放在剪贴板上的图片的大小?

有人有什么想法吗?对此,我真的非常感激 :)

最佳答案

粘贴图片后,设置其.Placement属性(property)给 xlMove (与单元格一起移动,但不要调整大小)在调整行大小之前。这可以防止图片调整大小。

这相当于设置图片格式属性

enter image description here

关于excel - 如何使用 VBA 将 Microsoft Word 公式导入 Microsoft Excel?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20749710/

相关文章:

vba - 循环遍历文件夹的各个子文件夹以及这些子文件夹的每个文件时出现问题

vba - 微软 Access : Import CSV file from a list of multiple files

c# - VSTO:为什么 OfficeRibbon.Context 为空?

xml - 通过 VBA 和剪贴板将 HTML 复制到 Word 会丢失特殊字符

excel - 使用 VBScript 以独占模式打开 Excel 文件

excel - ActiveDocument.SaveAs2 在 Excel 2000 中不起作用,但在 2010 和 2016 中正常

vba - 将字符串转换为 ASCII 数字

html - Excel VBA 更改 HTML 选择标记中的选项

vba - 考虑到两者都在同一个文件夹中,将数据从关闭的工作簿传输到打开的工作簿,而无需指定文件路径

delphi - 在ole自动化中用delphi粘贴