この記事では、VBAで色付け(セルの色の塗りつぶしや文字色:赤く色変更)や塗りつぶしなしにする方法【ダブルクリックで背景色】について解説していきます。
VBAでセルの背景色の塗りつぶし(色変更)や文字色の変更、塗りつぶしなしにするためのサンプルコードをいくつかのパターンで紹介していきますので、ぜひチェックしてみてください。
目次
VBAマクロでセルの色変更をする方法【背景色を赤く塗りつぶし・青く・緑色など】
VBAマクロにてダブルクリックにてセルの塗りつぶし色を変更するためのコードは以下の通りです。
セルをダブルクリックすると、赤などに塗りつぶし色を変更したいセルを含む「シート」を選んだ上で、右クリックし「コードの表示」を選びましょう。
その上で、以下のコードをVBE画面に貼り付けましょう。RGBコードというもので「赤」に相当する色番号を指定しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) ' 赤い色の RGB コード Dim RedColor As Long RedColor = RGB(255, 0, 0) ' ターゲットセルの背景色が赤い場合、塗りつぶしをクリア If Target.Interior.Color = RedColor Then Target.Interior.Color = xlNone ' ターゲットセルの背景色が赤くない場合、赤く変更 Else Target.Interior.Color = RedColor End If ' ダブルクリック後のデフォルト動作をキャンセル Cancel = True End Sub |
該当シート上では、ダブルクリックによって背景色が赤く変更される仕様となりました(^^)/
塗りつぶしされているセルを再度ダブルクリックしますと、以下のよう塗りつぶしなしの状態に戻ります。
別の塗りつぶし色にしたいケースでは以下のRGBコードを使いましょう。
RedColor = RGB(255, 0, 0) ‘ 赤
BlueColor = RGB(0, 0, 255) ‘ 青
GreenColor = RGB(0, 255, 0) ‘ 緑
OrangeColor = RGB(255, 165, 0) ‘ オレンジ
YellowColor = RGB(255, 255, 0) ‘ 黄色
GrayColor = RGB(128, 128, 128) ‘ 灰色
VBAで文字色の色付け(色変更)をする方法【赤く・青く・緑・黄色・オレンジ等に色付け】
文字色の色付けをしたいケースでは以下のコードを使いましょう。
文字色の場合では、デフォルトでは黒色の文字であることに注意するといいです(背景色では透明)。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) ' 赤い色と黒い色の RGB コード Dim RedColor As Long Dim BlackColor As Long RedColor = RGB(255, 0, 0) BlackColor = RGB(0, 0, 0) ' ターゲットセルの文字色が赤い場合、文字色を黒に変更 If Target.Font.Color = RedColor Then Target.Font.Color = BlackColor ' ターゲットセルの文字色が赤くない場合、赤く変更 Else Target.Font.Color = RedColor End If ' ダブルクリック後のデフォルト動作をキャンセル Cancel = True End Sub |
VBAマクロにて背景色を塗りつぶし無しにする方法【ダブルクリックにてセルの色を消す】
今度はダブルクリックにて、元々あるセルの色を塗りつぶし無しにする方法について確認していきます。
上と同様、ダブルクリックで背景色を消したいセルを含むシートを選んだ上で右クリック、コードの表示、VBE上に貼付します(Alt+F11からでもOK)。
1 2 3 4 5 6 7 |
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) ' ターゲットセルの背景色をクリア Target.Interior.Color = xlNone ' ダブルクリック後のデフォルト動作をキャンセル Cancel = True End Sub |
それでは塗りつぶしを消してみましょう(^^)/!以下がサンプルです。
ダブルクリックで任意のセルの背景色が消えました。
まとめ VBAでダブルクリックで色変更や塗りつぶしなしにする方法【セルの背景色】
この記事では、VBAでセルの色の塗りつぶし(赤く色変更)や塗りつぶしなしにする方法【ダブルクリックで背景色】について解説しました。
重要の操作のためこの機会に覚えておくといいです。
さまざまなエクセル操作をマスターし、さらに快適に毎日を過ごしていきましょう!