Как изменить существующий Tabstop в PowerPoint от VBA?

У меня есть код VBA для изменения размеров объектов в PowerPoint, включая размер шрифта, поля и все остальное. Но я не нашел решения для обновления / изменения существующего TapStop. Существует объект линейки с различными уровнями и значением по умолчанию. Я дважды проверил также объект TextRange с символами.

Есть какие-нибудь идеи по обновлению размера TabStop?

Вот пример TextBox, я хотел бы изменить размер:

Пример TextBox

Shape.textframe.ruler.tabstops.count всегда равен 0, если я "принимаю" только форму с помощью For-Each-Loop. Если я выберу это руководство, это также 0 в подменю TabStop s меню Paragraph. Если я щелкаю внутри фигуры (мигающий курсор) и снова открываю меню TabStop s, я вижу одну TabStopPosition.

Как я могу получить доступ к этой информации по VBA?

Я уже пробовал Line.Selection и ничего не работает.

Спасибо!

Моу

1 ответ

Решение

PowerPoint используется для разрешения только одного набора параметров абзаца для каждого текстового кадра (т. Е. Для каждой фигуры). Это изменилось в PPT2007; теперь у каждого абзаца может быть своя вкладка и другие настройки. Попробуй с этим:

Sub ShowMeTabs()

Dim X As Long
Dim lTabCount As Long

    With ActiveWindow.Selection.ShapeRange(1).TextFrame2.TextRange
        For X = 1 To .Paragraphs.Count
            Debug.Print X
            With .Paragraphs(X).ParagraphFormat
                For lTabCount = 1 To .TabStops.Count
                    Debug.Print .TabStops(lTabCount).Position
                Next    ' Tab
                Debug.Print "Level:" & .IndentLevel & " Position:" & .LeftIndent 'etc

            End With
        Next    ' paragraph x
    End With

End Sub
Другие вопросы по тегам