2014-10-30 4 views
1

У меня есть большой файл PPT, который мне нужно отформатировать для определенных спецификаций. Мне нужен шрифт Arial 14, если текст не подчеркнут. Если текст подчеркнут, мне нужен шрифт 32. Вот моя попытка до сих пор, у меня есть работа Arial 14, но я не могу понять, как выбрать только подчеркнутый текст. Если у кого-то есть мысли, это будет оценено. У меня также есть нулевой опыт работы с VBA вне этого проекта, хотя я знаком с C++Изменение шрифта подчеркнутого текста в Powerpoint

Sub use() 
Dim s As Slide 
Dim shp As Shape 

For Each s In ActivePresentation.Slides 
For Each shp In s.Shapes 
    If shp.HasTextFrame Then 
     With shp 
     .TextFrame.TextRange.Font.Name = "Arial" 
     .TextFrame.TextRange.Font.Size = 14 
      If .TextFrame.TextRange.Font.Underline = True Then 
       .TextFrame.TextRange.Font.Size = 32 
      End If 
      With .TextFrame.TextRange 
      .ParagraphFormat.SpaceBefore = 0 
      End With 

     End With 

     End If 
    Next shp 
Next s 
End Sub 

ответ

1

Попробуйте

Sub Sample() 
    Dim oSl As Slide 
    Dim oSh As Shape 
    Dim x As Long 

    For Each oSl In ActivePresentation.Slides 
     For Each oSh In oSl.Shapes 
      If oSh.HasTextFrame Then 
       If oSh.TextFrame.HasText Then 
        For x = 1 To Len(oSh.TextFrame.TextRange.Text) 
         If oSh.TextFrame.TextRange.Characters(x, 1).Font.Underline = True Then 
          With oSh.TextFrame.TextRange.Characters(x, 1) 
           .Font.Size = 32 
          End With 
         End If 
        Next 
       End If 
      End If 
     Next 
    Next 
End Sub 

Скриншот

enter image description here

Смежные вопросы