Я использую Excel VBA для написания уравнений в Word.
Дробная составляющая уравнения неправильно форматируется. Выражение имеет дробь, где числитель и знаменатель имеют показатель степени. Я не могу получить показатели в правильном положении.
Я попытался использовать квадратные скобки и лишние пробелы - в результате либо не было накопления объекта уравнения, либо странных показателей.
Sub TextToEquation()
Dim appWord as Word.Application
Dim eqText as String
Dim ac as OMathAutoCorrectEntry
Dim eqObj as Word.OMaths
'Create new word application
Set appWord = New Word.Application
With appWord
'Create new word document
.Documents.Add
'Turn Math Autocorrect On
.OMathAutoCorrect.UseOutsideOMath = True
With .Selection
'Write Text
.Text = "x^2 \times x^5/x^3"
'Find any math autocorrect and replace with character
For each ac in appWord.OMathAutoCorrect.Entries
If InStr(.text, ac.Name) > 0 then
.text = Replace(.text, ac.name, ac.value)
End If
Next ac
End With
'Add math object
Set eqObj = .OMaths.Add(.Range).OMaths.item(1)
'Build up equation <<< THIS IS WHERE THE BUG LIES
eqObj.BuildUp
eqObj.BuildUp
End With
Примечание. Фактический код отличается, но это актуально Фрагмент кода изменен для работы независимо.