0

假装我有这样一句话:“这是我的情况:”

“:”是常规的,我想改变它的风格,比如它之前的字符(E)。但我不知道在这种情况下使用哪个对象。我想找到“:”的索引,然后我检查它之前的字符字体样式(索引 - 1)如果它们不同我会将字符“:”(索引)的字体样式更改为索引 - 1。
我尝试TextFrame.TextRange.Font但那里出了点问题。
请帮助我,在此先感谢。

4

1 回答 1

3

试试这个代码:

Sub test()
    Dim sh As Shape, EF As Font, textLen As Integer
    
    For Each sh In ActivePresentation.Slides(1).Shapes
        If sh.HasTextFrame Then
            textLen = sh.TextFrame.TextRange.Length
            
            If textLen > 1 Then
                Set EF = sh.TextFrame.TextRange.Characters(textLen - 1, 1).Font
                With sh.TextFrame.TextRange.Characters(textLen, 1).Font
                    .Name = EF.Name
                    .Color = EF.Color
                    .Size = EF.Size
                    .Italic = EF.Italic
                    .Bold = EF.Bold
                    .Underline = EF.Underline
                    ' and other required properties
                End With
            End If
        End If
    Next
End Sub

在此处输入图像描述

于 2021-08-09T08:12:01.120 回答