2017-02-22 248 views
1

我需要通過VBA代碼將演示文稿的顏色方案更改爲Office 2007-2010。我怎樣才能做到這一點?Powerpoint VBA - 更改顏色方案

enter image description here

我試圖像下面,但似乎沒有工作。在PowerPoint

ActivePresentation.ColorSchemes.Add 
ActivePresentation.ColorSchemes(1).Colors(ppAccent1).RGB = RGB(0, 0, 1) 
ActivePresentation.ColorSchemes(1).Colors(ppAccent1).RGB = RGB(0, 0, 2) 
+0

如果主題顏色是出口到* .xml *文件,您可以簡單地設置(加載)演示文稿在SlideMaster上:'ActivePresentation.SlideMaster.Theme.ThemeColorScheme.Load「C:\ Theme Colors \ Office 2007 - 2010.xml」'將路徑更改爲存儲xml文件的位置。 – PatricK

+0

您應該能夠在'%USERPROFILE%\ AppData \ Roaming \ Microsoft \ Templates \ Document Themes \ Theme Colors'中找到自定義顏色xml文件。 – PatricK

+1

下面回答了問題,但值得指出的是,ColorSchemes僅在2007年之前與PPT版本向後兼容。對於PPT 2007和以後版本,您需要使用ColorThemes。 –

回答

0

更改配色方案應該是這樣的:

ActivePresentation.SlideMaster.Theme.ThemeColorScheme(msoThemeAccent1) = RGB(1, 2, 3)

有一個整體的答案在這裏:

https://answers.microsoft.com/en-us/msoffice/forum/msoffice_powerpoint-mso_winother/change-color-theme-using-vba-in-powerpoint/0efe38ad-36cb-4df7-b6e6-ed389c364f53

Sub mkThemeCols() 
With ActivePresentation.SlideMaster.Theme 
.ThemeColorScheme(msoThemeAccent1) = RGB(255, 0, 0) 
.ThemeColorScheme(msoThemeAccent2) = RGB(0, 255, 0) 
.ThemeColorScheme(msoThemeAccent3) = RGB(0, 255, 255) 
.ThemeColorScheme(msoThemeAccent4) = RGB(255, 255, 0) 
.ThemeColorScheme(msoThemeAccent5) = RGB(23, 255, 10) 
.ThemeColorScheme(msoThemeAccent6) = RGB(23, 255, 100) 
.ThemeColorScheme(msoThemeDark1) = RGB(23, 0, 0) 
.ThemeColorScheme(msoThemeDark2) = RGB(23, 23, 23) 
.ThemeColorScheme.Save Environ("APPDATA") & "\Microsoft\Templates\Document Themes\Theme Colors\myNew Theme.xml" 
End With 
End Sub