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

时间:2013-12-23 19:09:37

标签: excel ms-word word-vba

我一直在寻找将图片和表格以及其他内容从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

我上面的问题是图片贴在我想要的地方,但比它所坐的行大,如果我调整行的大小,图片会垂直线性延伸,行调整大小。在粘贴之前,我需要调整我粘贴此图像的行的大小。如何访问我刚放在剪贴板上的图片大小?

有没有人有想法?我真的很感激它:)

1 个答案:

答案 0 :(得分:0)

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

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

enter image description here