PowerPoint VBAで表の塗りつぶしを簡単に!初心者でもできる実践マクロ解説

パソコンパソコン・スマホ教室
スポンサーリンク

PowerPointで作成したプレゼンテーションの表に色を付けたいけれど、手作業では面倒だし、VBA(マクロ)を使うのは難しそう…と感じていませんか?でも安心してください。今回は、初心者の方でもわかりやすく、PowerPoint VBAを使って表のセルに色を塗る方法を、実際の手順とともに解説します。

スポンサーリンク

なぜVBAで表を塗りつぶすのか?

PowerPointのイメージ

PowerPointのイメージ

「手作業で色を付ければいいじゃないか」と思うかもしれませんが、大量の表や複数のスライドにわたる作業では、VBAを使うことで作業効率が格段にアップします。例えば、毎回同じ色を使う場合や、特定の条件に基づいて色を変えたい場合など、VBAを活用することで時間と手間を大幅に削減できます。

VBAで表のセルを塗りつぶす基本のコード

まずは、PowerPoint VBAで表のセルに色を塗る基本的なコードをご紹介します。

Sub 塗りつぶし_セル()
Dim slide As slide
Dim shape As shape
Dim table As table
Dim cell As cell

' アクティブなスライドを取得
Set slide = ActivePresentation.Slides(1)

' スライド内の図形をループ
For Each shape In slide.Shapes
' 図形がテーブルの場合
If shape.HasTable Then
Set table = shape.Table
' テーブルの各セルをループ
For Each cell In table.Range.Cells
' セルの塗りつぶし色を設定(例RGB(255, 255, 0)は黄色)
cell.Shape.Fill.ForeColor.RGB = RGB(255, 255, 0)
Next cell
End If
Next shape
End Sub

このコードを実行すると、指定したスライド内のすべてのテーブルのセルが黄色に塗りつぶされます。

色を条件で塗り分ける応用例

次に、セルの内容に応じて色を変える応用例をご紹介します。例えば、セルの値が「重要」の場合に赤色に、そうでない場合に緑色に塗り分けるコードは以下の通りです。

Sub 塗りつぶし_条件付き()
Dim slide As slide
Dim shape As shape
Dim table As table
Dim cell As cell

' アクティブなスライドを取得
Set slide = ActivePresentation.Slides(1)

' スライド内の図形をループ
For Each shape In slide.Shapes
' 図形がテーブルの場合
If shape.HasTable Then
Set table = shape.Table
' テーブルの各セルをループ
For Each cell In table.Range.Cells
' セルのテキストが「重要」の場合
If cell.Shape.TextFrame.HasText Then
If cell.Shape.TextFrame.TextRange.Text = "重要" Then
' セルの塗りつぶし色を赤に設定
cell.Shape.Fill.ForeColor.RGB = RGB(255, 0, 0)
Else
' セルの塗りつぶし色を緑に設定
cell.Shape.Fill.ForeColor.RGB = RGB(0, 255, 0)
End If
End If
Next cell
End If
Next shape
End Sub

このコードを実行すると、テーブル内のセルの内容が「重要」の場合に赤色、それ以外の場合に緑色に塗りつぶされます。

よくある質問や疑問

Q1: VBAを使うにはどうすればいいですか?

PowerPointでVBAを使用するには、まず「開発」タブを表示する必要があります。リボンの上で右クリックし、「リボンのユーザー設定」を選択。「開発」にチェックを入れてOKをクリックすると、「開発」タブが表示されます。そこから「Visual Basic」を選択してVBAエディタを開き、コードを入力・実行できます。

Q2: 色を変更する際、RGB以外の方法はありますか?

はい、RGB以外にも「ColorIndex」を使用して色を指定する方法があります。ただし、「ColorIndex」はカラーパレットに設定されている色番号を指定するため、RGBほど自由度は高くありません。例えば、

cell.Shape.Fill.ForeColor.SchemeColor = 6

のように使用します。

Q3: VBAのコードを他のスライドやプレゼンテーションでも使いたいのですが?

他のスライドやプレゼンテーションでも同じコードを使用する場合、コードを「標準モジュール」として保存し、必要なプレゼンテーションにインポートすることで再利用できます。また、頻繁に使用する場合は、VBAで作成したマクロをボタンに割り当てて、ワンクリックで実行できるようにすることも可能です。

今すぐ解決したい!どうしたらいい?

LINE公式

いま、あなたを悩ませているITの問題を解決します!
「エラーメッセージ、フリーズ、接続不良…もうイライラしない!」

あなたはこんな経験はありませんか?

✅ ExcelやWordの使い方がわからない💦
✅ 仕事の締め切り直前にパソコンがフリーズ💦
✅ 家族との大切な写真が突然見られなくなった💦
✅ オンライン会議に参加できずに焦った💦
✅ スマホの重くて重要な連絡ができなかった💦

平均的な人は、こうしたパソコンやスマホ関連の問題で年間73時間(約9日分の働く時間!)を無駄にしています。あなたの大切な時間が今この悩んでいる瞬間も失われています。

LINEでメッセージを送れば即時解決!

すでに多くの方が私の公式LINEからお悩みを解決しています。

最新のAIを使った自動応答機能を活用していますので、24時間いつでも即返信いたします。

誰でも無料で使えますので、安心して使えます。

問題は先のばしにするほど深刻化します。

小さなエラーがデータ消失重大なシステム障害につながることも。解決できずに大切な機会を逃すリスクは、あなたが思う以上に高いのです。

あなたが今困っていて、すぐにでも解決したいのであれば下のボタンをクリックして、LINEからあなたのお困りごとを送って下さい。

相談しに行く

ぜひ、あなたの悩みを私に解決させてください。

まとめ

PowerPoint VBAを使って表のセルに色を塗る方法をご紹介しました。最初は難しそうに思えるかもしれませんが、実際にコードを入力して実行してみると、意外と簡単にできることがわかります。少しずつ慣れていけば、さらに高度な操作も可能になります。

他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。

コメント

タイトルとURLをコピーしました