エクセルマクロで、テキストボックス・図形をクリックすると色が変わるVBAコードをご紹介します。
このページのマクロコードは、コピペで使えます。
ぜひお試しください😉
クリックしたテキストボックス図形の色変更(透明)
以下のマクロを実行すると、クリックしたテキストボックス図形の色を透明にします。
Sub クリックした図形テキストボックスの背景色を色なしに設定()
Dim Myobj As Variant
'クリックしたオブジェクトの名称を取得
Set Myobj = ActiveSheet.Shapes(Application.Caller)
'クリックしたオブジェクトの塗りつぶしを解除する
ActiveSheet.Shapes.Range(Array(Myobj.Name)).Fill.Visible = msoFalse
End Sub
マクロ実行後
クリックした図形の塗りつぶしをなくします。
図形テキストボックスの枠線は残ります。
図形テキストボックスにマクロ登録する
クリックしてオブジェクトの色を変更するには、
対象オブジェクトにマクロ登録をする必要があります。
【対象オブジェクトにマクロ登録をする方法】
1. 対象オブジェクト上で右クリックして、「マクロの登録」を選択
2.「マクロの登録」画面で、プログラムを選択(下図①)
3.「OK」をクリック(下図②)
クリックしたテキストボックス図形の色変更(透明⇔青)
以下のマクロを実行すると、クリックした図形の背景色を青から透明に、透明から青に変更します。
Sub クリックした図形テキストボックスの背景色を変更()
Dim Myobj As Variant
'クリックしたオブジェクトの名称を取得
Set Myobj = ActiveSheet.Shapes(Application.Caller)
With ActiveSheet.Shapes.Range(Array(Myobj.Name))
If .Fill.Visible = msoFalse Then
'クリックしたオブジェクトが透明だったら、背景色に色付け
.Fill.Visible = msoTrue
.Fill.ForeColor.RGB = RGB(0, 176, 240)
Else
'クリックしたオブジェクトに色がついていたら、背景色を透明にする
.Fill.Visible = msoFalse
End If
End With
End Sub
マクロ実行後
クリックした図形の背景色を変更します。
背景色が透明だったら、青色に塗りつぶします。
背景色に色がついていたら、透明に変更します。
クリックごとに色を変えることができます。
※図形テキストボックスの枠線は残ります。
この記事がお役に立ちますと幸いです🍀
【エクセルマクロ】図形処理を自動化:超便利7選
...
「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説
リンク