[VBA]批量替换PPT里的字体颜色

不知道为什么计组老师的大量课件字体是伤害视力的亮蓝色……看久了眼睛疼,想把颜色替换成保护视力一点的灰色,但是找了N久也没找到在图形界面上直接操作的方法,于是在MSDN上晃了晃,Google了一下,写了个VBA小脚本,只替换选定颜色,这样可以保留红色或者其他颜色的高亮,顺便把让人分心的花花背景也干掉。

Sub ReplaceColor()
Dim shape As shape
Dim slide As slide
Dim txt As TextRange
On Error Resume Next '替换背景颜色为白色
ActivePresentation.SlideMaster.Background.Fill.Solid
ActivePresentation.SlideMaster.Background.Fill.ForeColor.RGB = RGB(, , ) For Each slide In ActivePresentation.Slides
For Each shape In slide.Shapes
Set txt = shape.TextFrame.TextRange
For Each sentence In txt.Sentences
For Each word In sentence.Words
'把蓝色的文字替换成灰色
If word.Font.color.RGB = RGB(, , ) Or word.Font.color.RGB = RGB(, , ) Then
With word.Font
.color.RGB = RGB(, , )
End With
End If
Next
Next
Next
Next
End Sub

Before

[VBA]批量替换PPT里的字体颜色

After

[VBA]批量替换PPT里的字体颜色

我承认我只是在逃避复习计组………………用LP1、LP2、LP3这种标记名的汇编程序简直不想多看一眼好吗!!!

其实还有一点缺陷,不能替换掉表格里的字体……不过真的不能再浪费时间跑去查文档鼓捣了(何况我几乎不会VB=。=) 明晚就考试,复习复习……

上一篇:CSS3文本与字体


下一篇:copy代码的时候,如何去掉代码前边的编号