Добрый вечер! Пытаюсь сделать макрос, который покажет, какие параметры имеет символ, расположенный справа от курсора, интересует:
1. Тип шрифта
2. Размер шрифта
3. Интервал шрифта
4. Междустрочный интервал (для текущего абзаца с курсором)
5. Интервал перед и после (для текущего абзаца с курсором)
6. Отступы слева и справа (для текущего абзаца)
7. Отступ первой строки (для текущего абзаца)
8. Выравнивание (слева, по центру и т.д.) (для текущего абзаца)
9. Стиль текста
Можно ли как-то вывести такие сведения для символа, расположенный справа от курсора или хотя бы для абзаца? Если сложно, то посоветуйте пожалуйста, где поискать. Через запись макроса получается только изменить цифры, а вот как определить текущие значения, не пойму.
Нужно использовать объект "Range", он смотрит символ справа.
А объект "Selection" смотрит символ слева.
Sub Макрос()
' Вывод в View - Immediate Window имени шрифта символа, который находится справа от курсора.
Debug.Print Selection.Range.Font.Name
End Sub
Спасибо. Правильно ли будет для абзаца так?
Debug.Print Selection.Range.ParagraphFormat.SpaceBefore
Опишите словами, какую информацию вы хотите узнать этим кодом?
Для абзаца - интервал перед предыдущим абзацем.
Да, так. В этом случае можно не использовать объект "Range", а используйте просто "Selection", чтобы не было лишнего в коде.
Вы и сами можете проверить, так это или нет - вручную изменяйте интервал и смотрите, какой результат даёт код. Если код выдаёт разные данные, значит вы правильно делаете.
Вроде получается. Большое спасибо!