wetewtew 发表于 2017-2-8 03:18:20

在PPT2010及以上中怎样将特定字符(如-)设置成特定字体(如华文中宋)?

如题。这在Word中通过查找替换很易实现,但PPT却不能,应能否通过VBA实现,但我写了几次,均未成功,请高手相助。

messiah_lu 发表于 2017-2-8 05:33:32

我自己解决了。
Sub SetFont()
    Dim s       As slide
    Dim shp   As shape
    Dim trng    As TextRange
    Dim i       As Integer
    ' /* 遍历活动窗口中打开的演示文稿中的幻灯片. */
    For Each s In ActivePresentation.Slides
      ' /* 遍历当前幻灯片中的形状对象. */
      For Each shp In s.Shapes
            ' /* 当前幻灯片中的当前形状含有文本框架. */
            If shp.HasTextFrame Then
                ' /* 当前幻灯片中的当前形状包含文本. */
                If shp.TextFrame.HasText Then
                  ' 引用文本框架中的文本.
                  Set trng = shp.TextFrame.TextRange
                  ' /* 遍历文本框架中的每一个字符. */
                  For i = 1 To trng.Characters.Count
                        ' 这里请自行修改字符.
                        If trng.Characters(i).Text = "+" Or trng.Characters(i).Text = "-" Then
                            ' 这里请自行修改为要替换的字体.
                            trng.Characters(i).Font.NameFarEast = "华文中宋"
                        End If
                  Next
                End If
            End If
      Next
    Next
End Sub
页: [1]
查看完整版本: 在PPT2010及以上中怎样将特定字符(如-)设置成特定字体(如华文中宋)?