エクセルVBAでダブルクリックしたら色を反転させたのですが、
指定していないセルはダブルクリックしてもこのVBAは発動させたくないので
発動させるセルの指定方法を教えてください。指定するセルは複数個所あり点在しています。
また、下記のコードでもう少し簡素化できるところがあればご指導ください。
宜しくお願いいたします。
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'背景反転
With Target.Interior
If .ColorIndex = xlNone Then
.Color = vbBlack
Else
.Color = xlNone
End If
End With
Cancel = True
'文字反転
With Cells(Target.Row, Target.Column).Font
If .Color = vbBlack Then
.Color = vbWhite
ElseIf .Color = vbWhite Then
.Color = vbBlack
End If
Cancel = True
End With
End Sub
No.2ベストアンサー
- 回答日時:
こんにちは
>発動させるセルの指定方法を教えてください
一番最初に「指定範囲内にあるかどうか」を判断するようにすれば良いでしょう。
以下では、いかがでしょうか?
※ 対象とする範囲を、変数 targetArea として、通常の文字列で指定しておきます。
(例では、D10:E11、H12:I14、J6:K7 の三か所になっています)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const targetArea = "D10:E11,H12:I14,J6:K7" ' 指定範囲
If Intersect(Target, Range(targetArea)) Is Nothing Then Exit Sub
Cancel = True
With Target.Interior
If .ColorIndex = xlNone Then .ColorIndex = vbBlack _
Else .ColorIndex = xlNone
End With
With Target.Font
If .Color = vbBlack Then .Color = vbWhite
If .Color = vbWhite Then .Color = vbBlack
End With
End Sub
ご丁寧にありがとうございます!VBA初心者なので助かります。
しかし試してみたのですが、指定したセルだけ反応は違うのですが色が反転しません?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
最近、いつ泣きましたか?
泣いてストレス発散! なんて言いますよね。 あなたは最近いつ、どんなシチュエーションで泣きましたか?
-
家・車以外で、人生で一番奮発した買い物
どんなものにお金をかけるかは人それぞれの価値観ですが、 誰もが一度は清水の舞台から飛び降りる覚悟で、ちょっと贅沢な買い物をしたことがあるはず。
-
メモのコツを教えてください!
メモを取るのが苦手です。 急いでメモすると内容がごちゃごちゃになってしまったり、ひどいときには全く読めない時もあります。
-
昨日見た夢を教えて下さい
たまにすごいドラマチックな夢見ること、ありませんか? 起きてからも妙に記憶に残っているような、そんな夢。
-
「お昼の放送」の思い出
小学校から中学校、ところによっては高校まで お昼休みに校内放送で、放送委員が音楽とかおしゃべりとか流してましたよね。 最近は自分でもラジオができるようになって、そのクオリティもすごいことになっていると聞きます。
-
VBA ダブルクリックするたびにセルの色が順番に変わる
Excel(エクセル)
-
【VBA】クリックする毎にセル色が変わる
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・【お題】絵本のタイトル
- ・【大喜利】世界最古のコンビニについて知ってる事を教えてください【投稿~10/10(木)】
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
【VBA】【ユーザーフォーム_Lis...
-
Excel 範囲指定スクショについ...
-
Excel UserForm の表示位置
-
DataGridViewでグリッド内に線...
-
入力規則のリスト選択
-
【ExcelVBA】値を変更しながら...
-
エクセルのカーソルを非表示に...
-
【Excel VBA】一番右端セルまで...
-
Excelで空白セル直前のセルデー...
-
下記のマクロの説明(意味)を...
-
Excel VBAでCheckboxの名前を変...
-
Excel VBA IF文がうまく動作し...
-
VBA 特定のセルからoffsetされ...
-
特定の色のついたセルを削除
-
Excel VBA でFunctionプロシジ...
-
関数の引数でrangeを指定したとき
-
Excelセル内の特定座標に画像を...
-
【VBA】写真の貼り付けコードが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
特定の色のついたセルを削除
-
Excel UserForm の表示位置
-
Excelで空白セル直前のセルデー...
-
【VBA】【ユーザーフォーム_Lis...
-
VBA:日付を配列に入れ別セルに...
-
【Excel VBA】一番右端セルまで...
-
Excel VBAでCheckboxの名前を変...
-
EXCEL VBA 文中の書式ごと複写...
-
入力規則のリスト選択
-
DataGridViewのフォーカス遷移...
-
【VBA】写真の貼り付けコードが...
-
CellEnterイベント仕様について
-
下記のマクロの説明(意味)を...
-
飛び地セルの空白判定
-
Excel 範囲指定スクショについ...
-
C# DataGridViewで複数選択した...
-
Excel VBA IF文がうまく動作し...
-
エクセルのカーソルを非表示に...
おすすめ情報