エクセル(Excel)でクリックするだけでセルを塗りつぶしするには、どうすれば良いんでしょうか?
エクセルであるひとつのセルをマウスでクリックして色(塗りつぶし)をつけるには?
エクセル|クリックでセルの色を変える・塗りつぶしする方法・やり方
エクセル(Excel)でクリックするだけでセルを塗りつぶしする方法としては、マクロを使うことになります。
■A列のセルをクリックするとそのセルを赤く塗りつぶし、再度同じセルをクリックすると塗りつぶしを解除するサンプル
シートタブを右クリックして表示されるメニューから[コードの表示]を選択し、そこで開かれるウィンドウに以下をコピペしたら、そのウィンドウを閉じます。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 1 Then Exit Sub ‘※1
Select Case Target.Interior.ColorIndex
Case Is = xlNone
Target.Interior.ColorIndex = 3 ‘※2
Case Else
Target.Interior.ColorIndex = xlNone
End Select
End Sub
※1:数字の 1 はA列を意味します。C列なら 3 です。
※2:数字の 3 は赤で、4=緑、5=青、6=黄、7=ピンク、8=水色、です。
エクセル|ダブルクリックでセルの色を変える・塗りつぶしする方法・やり方
エクセルでセルをダブルクリックして色(塗りつぶし)をつけるには
・使用しているシートのシート名タブを右クリックして「コードの表示」を
指定し、開いたコードウィンドウに下記コードをコピーして貼り付けます。
・Alt+ Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
・メニューから[ツール]–>[マクロ]–>[セキュリティ]で「セキュリティレベル」を
「中」にして[OK]します。 (Excel 2003)
Excel2007~のときは、メニューが違いますが、セキュリティレベルを
「警告を表示してすべてのマクロを無効」にします。
・以上で設定完了です。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const Hani = “A1:C20” ‘ <— 機能範囲を指定
Const Iro As Variant = 6 ‘ <— 色を指定(↓を参照)
‘赤=3, 緑=4, 青=5, 黄=6, ピンク=7, 水=8, 茶=9, 灰=15(標準設定のとき)
Dim Rng As Range
Set Rng = Intersect(Range(Hani), Target)
If Not Rng Is Nothing Then
Cancel = True
Rng.Interior.ColorIndex = Iro
End If
Set Rng = Nothing
End Sub
エクセル|クリックするたびにセルの色を変える・塗りつぶしする方法・やり方
エクセルでセルをダブルクリックするたびにに変化させる方法について。
仮にA1:A5の範囲でセルをダブルクリックするたびに(色なし→赤→青→緑→黄色)と塗りつぶしする場合は、
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range(“A1:A5”)) Is Nothing Then Exit Sub
Select Case Target.Interior.ColorIndex
Case Is = xlNone
Target.Interior.ColorIndex = 3
Case Is = 3
Target.Interior.ColorIndex = 5
Case Is = 5
Target.Interior.ColorIndex = 4
Case Is = 4
Target.Interior.ColorIndex = 6
Case Is = 6 ’ 黄色だった場合に塗りつぶしなしに戻す
Target.Interior.ColorIndex = xlNone
End Select
Cancel = True
End Sub
塗りつぶしなしに戻さないなら
Case Is = 6 ’ 黄色だった場合に塗りつぶしなしに戻す
Target.Interior.ColorIndex = xlNone
の部分を削除してください。
参考:エクセルでクリックで図形の色を変える方法・やり方
その図形の名前を仮に楕円1とします。
その図形に下記マクロを登録します。
色は添付図に近いものにしましたが、調整して下さい。
Sub test()
With ActiveSheet.Shapes(“楕円1”)
If .Fill.ForeColor.RGB = RGB(192, 192, 192) Then
.Fill.ForeColor.RGB = RGB(0, 102, 204)
.Line.ForeColor.RGB = RGB(0, 102, 204)
Else
.Fill.ForeColor.RGB = RGB(192, 192, 192)
.Line.ForeColor.RGB = RGB(192, 192, 192)
End If
End With
End Sub