質問: xlNone Exit Sub End If End Sub ``` これで、目的通りの動きを実現できました。ご回答ありがとうございました。
回答: `Exit Sub`とはサブルーチン(Private SubからEnd Subまでの範囲)を抜ける命令です。 `If ~ Then Eixt Sub` とコードを記述すると、`If ~ Then`の評価がTrueの場合に`Worksheet_SelectionChange`の処理からExitしてしまいます。 手元の環境では`Target.Row`が`Target.row`に書き換わる現象は再現しませんでした。 `row`プロパティを含む`Target`クラスモジュールなどが原因の可能性がありますので、vbaのカレントプロジェクト全体で`row`を検索して、当該コードがないか確認するのが良いと思います。 それを踏まえて修正すると下記のコードのようになるでしょうか。 「複数選択したセルを着色」というコメントの意図が分からないので、単一セルを選択した場合には塗りつぶしなしにするよう実装しています。 ``` Private Sub Worksheet_SelectionChange(ByVal Target As Range) '単一のセルを選択した場合は塗りつぶしなしにする If Target.Count <= 1 Then Target.Interior.ColorIndex = xlNone Exit Sub End If '複数選択したセルを着色 If Target.Row >= 11 And Target.Column >= 6 Then Select Case Target.Interior.ColorIndex 'クリックしたセルの色が Case xlNone '無色の場合は Target.Interior.ColorIndex = 3 '「3」赤色に着色 Case Else 'それ以外の色の場合は Target.Interior.ColorIndex = xlNone '無色にする End Select End If End Sub ```