Форум по VBA и MS Office

Word => Макросы в Word => Тема начата: Илья Муромец от 16 февраля 2016, 16:51

Название: Word VBA: работа с объектом Формула
Отправлено: Илья Муромец от 16 февраля 2016, 16:51
В документе есть текст и несколько уравнений (формул). Как из VBA последовательно выделить каждую формулу? Как понимаю работать надо через Selection.OMaths.Item(1), но выдается сообщение "Запрашиваемый номер семейства не существует".
Название: Re: Word VBA: работа с объектом Формула
Отправлено: Администратор от 16 февраля 2016, 18:07
Создайте новый пустой ворд-файл и вставьте туда одну формулу и выложите этот файл на форуме.
Это нужно, чтобы понимать, о каких формулах вы пишите.
Или если по каким-то причинам вы не можете выложить файл, то напишите, как создаёте формулу, а именно, куда щёлкаете, чтобы вставить формулу.
Название: Re: Word VBA: работа с объектом Формула
Отправлено: Илья Муромец от 17 февраля 2016, 04:01
Вот

[вложение удалено администратором]
Название: Re: Word VBA: работа с объектом Формула
Отправлено: Администратор от 17 февраля 2016, 08:32
Selection работает двумя способами:
Используя "Selection.OMaths.Item(1)" вы говорите макросу, что хотите работать с формулами, которые находятся или рядом с курсором, или которые находятся в выделенном фрагменте.
Но в задании вы пишите, что вам нужно работать с формулами в документе, а не в выделении.
Значит используйте так:
ActiveDocument.OMaths.Item(1)
Название: Re: Word VBA: работа с объектом Формула
Отправлено: Илья Муромец от 17 февраля 2016, 08:37
Большое спасибо! Очень помогли!