選択が変更されたときにセルの色を配置するシンプルなソリューション
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Selection.Interior.ColorIndex = xlColorIndexNone
Selection.Interior.Color = RGB(204, 204, 204)
End Sub
フォーカスが失われたときにのみセルの色を変更する複雑なソリューション
標準モジュール:
Option Explicit
Public s As Range
シートで作業するもの:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Set s = Selection
End Sub
でThisWorkbook
:
Private Sub Workbook_Deactivate()
If s Is Nothing Then
Set s = Selection
Exit Sub
End If
s.Interior.ColorIndex = xlColorIndexNone
s.Interior.Color = RGB(204, 204, 204)
' This is optional formatting to make the cells look more like they're actually selected
s.Borders.Color = RGB(130, 130, 130)
s.BorderAround _
Color:=RGB(30, 130, 37), Weight:=xlThick
End Sub
Private Sub Workbook_Activate()
If s Is Nothing Then
Set s = Selection
Exit Sub
End If
s.Interior.ColorIndex = xlColorIndexNone
s.Borders.ColorIndex = xlColorIndexNone
End Sub
引用:簡単な解決策は、@ Daveの回答に基づいています。複雑なソリューションは、特にこの投稿の@JohnColemanの助けを借りて、多くのソースから集められました。