「PowerPoint vba セルの塗りつぶし」
という検索キーワードでアクセスがありました。
プレゼンテーションファイル上に存在する表内のセルで塗りつぶし書式を設定するには、PowerPoint VBAでどのようなコードを書けばいいのかを探していらしたのでしょうか。
セルの塗りつぶしを設定するサンプルマクロ
以下のSubプロシージャを実行すると、アクティブなプレゼンテーションの先頭スライドに存在する表の、1行目×1列目のセルが青色「RGB(0, 0, 255)」で塗りつぶされます。
With ActivePresentation.Slides(1).Shapes(2)
If .HasTable Then
.Table.Cell(1, 1).Shape.Fill.ForeColor.RGB = RGB(0, 0, 255)
End If
End With
End Sub
セルの塗りつぶしを設定するオブジェクトについて
拙著『いちばんやさしいPowerPoint VBAの教本』のChapter 8で表の基本について、図形の塗りつぶしについてはChapter 5内で解説しています。上記のSubプロシージャではそれらを利用しています。
最初の、
With ActivePresentation.Slides(1).Shapes(2)
の部分は、拙著のChapter 3~5で解説している、PowerPoint VBAのもっとも基本的な階層
Presentations/Presentation
└ Slides/Slide
└ Shapes/Shape
を辿って、表の存在する図形を取得しているコードです。
一般的なPowerPointの資料では、2つ目の図形に表を作成することが多いため、Shapesコレクションの既定メソッドに指定する引数を「2」とし、
With ActivePresentation.Slides(1).Shapes(2)
拙著Lesson 41でご紹介しているShape.HasTableプロパティで、表が存在するかを確認しています。
If .HasTable Then
表内の1行目×1列目のセル内に存在する図形を取得するコード「.Table.Cell(1, 1).Shape」は、
.Table.Cell(1, 1).Shape.Fill.ForeColor.RGB = RGB(0, 0, 255)
Chapter 8のLesson 56で解説しているものと同じです。
図形の塗りつぶしを設定するコード「Shape.Fill.ForeColor.RGB = RGB(0, 0, 255)」は、
.Table.Cell(1, 1).Shape.Fill.ForeColor.RGB = RGB(0, 0, 255)
Chapter 5のLesson 43で解説しているものと同じです。
「PowerPoint vba セルの塗りつぶし」
と検索なさった方が、PowerPoint VBAをほとんど利用したことがないのであれば、Chapter 3~5で、PowerPoint VBAのもっとも基本的なオブジェクトの階層構造について概要を理解した上で、(Chapter 6・7はとりあえず飛ばして)Chapter 8を参考にしていただくとイイのかなと、考えています。
最終更新日時:2020-04-11 10:22
- Newer:Word VBAで行を選択する
- Older:Excel VBAのSentencesプロパティとは
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » 表・テーブル » PowerPoint VBAでセルの塗りつぶしを設定する