【发布时间】:2013-12-02 19:24:49
【问题描述】:
我正在尝试使用 VBA 在 Microsoft Word 2010 中自动生成方程式并将其插入 Excel,因为它不支持 oMath 对象。问题在于 oMath.BuildUp 方法。它不会像手动输入时那样解释 \sqrt、\times、\delta 等内容。
例如,将代码 Celsius = \sqrt(x+y) + sin(5/9 \times (Fahrenheit – 23 (\delta)^2)) 输入方程将得到这个结果 http://i43.tinypic.com/10xc7zp.jpg 这很好。
但是当使用宏 VBA 或录制宏时,此方法无法正常工作,并给出如下结果: http://i42.tinypic.com/29c5geg.png。像 \sqrt、\times、\delta 这样的东西会被忽略。为什么?这是我用来生成第二张图片的宏。
Sub genEQ()
Dim objRange As Range
Dim objEq As OMath
Set objRange = Selection.Range
objRange.Text = "Celsius = \sqrt(x+y) + sin(5/9 \times (Fahrenheit – 23 (\delta)^2))"
Set objRange = Selection.OMaths.Add(objRange)
Set objEq = objRange.OMaths(1)
objEq.BuildUp
End Sub
【问题讨论】:
标签: vba excel ms-word equation