【问题标题】:Automating MathO with VBA使用 VBA 自动化 MathO
【发布时间】:2015-09-27 16:27:24
【问题描述】:

我可以使用 VBA 将公式插入到 MS Word 文档中,使用随附的 Equation Tool 第三方软件。当我想退出方程式编辑器并编写普通的 MS Word 文本时,问题就来了。这必须使用 VBA 自动化。这是我用来插入代码的 VBA 代码:

Set objRange = Selection.Range
Set objRange = Selection.OMaths.Add(objRange)
Selection.TypeText s
Set objEq = objRange.OMaths(1)
objEq.Type = wdOMathInline
objEq.BuildUp

让我把问题说得更清楚一点:我希望将公式编辑器的文本放在一段普通文本中,就像我希望能够将粗体文本放在一段普通文本中一样文本,如本段所述。

【问题讨论】:

    标签: vba ms-word


    【解决方案1】:

    我使用Selection.TypeParagraph 成功逃脱了公式编辑器:

    Set objRange = Selection.Range
    Set objRange = Selection.OMaths.Add(objRange)
    Selection.TypeText "Equation Text"
    Selection.TypeParagraph
    Selection.TypeText "Regular Text"
    Set objEq = objRange.OMaths(1)
    objEq.Type = wdOMathInline
    objEq.BuildUp
    

    让我知道这是否适合你。

    【讨论】:

    • 我尝试使用 Range,但没有成功。 Sub PrintMath(s As String) Dim charStart As Integer Dim charEnd As Integer Dim objRange As Range charStart = ActiveDocument.Characters.Count charEnd = charStart + Len(s) Set objRange = ActiveDocument.Range(charStart, charEnd) Set objRange = Selection。 Range Set objRange = Selection.OMaths.Add(objRange) Selection.TypeText s Set objEq = objRange.OMaths(1) objEq.Type = wdOMathInline objEq.BuildUp End Sub
    • 看起来你想要做的是在文档末尾插入公式。如果是这种情况,只需使用Selection.EndKey Unit:=wdStory 放置光标和结尾。然后继续上面的代码。如果您想做更多的事情,请告诉我。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-10
    • 2017-04-05
    • 1970-01-01
    • 2019-01-04
    • 1970-01-01
    • 1970-01-01
    • 2020-01-16
    相关资源
    最近更新 更多