「ダークモード」のページの色を切り替えるマクロですが、何か問題がありますか?

「ダークモード」のページの色を切り替えるマクロですが、何か問題がありますか?

ページの色を変更し、Microsoft Office 全体のダーク モードの背景と同じにするための VBA マクロを作成しようとしました。

私の問題は、新しい文書でマクロを実行すると、最初はページの色が実際には変更されないことです。デザイン>ページの色マクロは確かに私が望む色を切り替えたのですが、ページ自体はそれに応じて変化しません。実際に「確認」するには、手動で押す必要があります。その後、問題なくマクロを通じて色を切り替えたり、切り替えを解除したりできます。何が間違っているのか、何か考えはありますか?

これが私のコードです:

Sub DarkMode()
'
' DarkMode Macro
If ActiveDocument.Background.Fill.Visible = msoFalse Then
ActiveDocument.Background.Fill.ForeColor.ObjectThemeColor = _
    wdThemeColorText1
ActiveDocument.Background.Fill.ForeColor.TintAndShade = 0.15
ActiveDocument.Background.Fill.Visible = msoTrue
ActiveDocument.Background.Fill.Solid
Else
ActiveDocument.Background.Fill.Visible = msoFalse
End If

End Sub

答え1

ActiveDocument.ActiveWindow.View.DisplayBackgrounds = Trueコードを追加して、View が背景を表示できるようにする必要があります。

完全なコードは次のようになります。

 Sub DarkModeNewPage()

 ActiveDocument.ActiveWindow.View.DisplayBackgrounds = True
 If ActiveDocument.Background.Fill.Visible = msoFalse Then
    ActiveDocument.Background.Fill.ForeColor.ObjectThemeColor = _
       wdThemeColorText1
    ActiveDocument.Background.Fill.ForeColor.TintAndShade = 0.15
    ActiveDocument.Background.Fill.Visible = msoTrue
    ActiveDocument.Background.Fill.Solid
 Else
    ActiveDocument.Background.Fill.Visible = msoFalse
 End If


 End Sub

関連情報