
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'減免の設定 減免列をダブルクリックしセルを赤く塗りつぶす、同じ動作で解除する
If Intersect(Target, Range("T2:T1662")) Is Nothing Then Exit Sub
With Target
If .Interior.ColorIndex <> 3 Then
.Interior.ColorIndex = 3
.Offset(0, 0).Value = "減免"
.Offset(0, -18).Value = "a"
Else
.Interior.ColorIndex = xlNone
.Offset(0, 0).Value = ""
.Offset(0, -18).Value = ""
End If
End With
Cancel = True
'期間限定の設定 x列をダブルクリックしセルを黄色に塗りつぶす、同じ動作で解除する
If Intersect(Target, Range("X2:X1662")) Is Nothing Then Exit Sub
With Target
If .Interior.ColorIndex <> 6 Then
.Interior.ColorIndex = 6
.Offset(0, 0).Value = "期間限定"
Else
.Interior.ColorIndex = xlNone
.Offset(0, 0).Value = ""
End If
End With
Cancel = True
End Sub
上記のマクロで上段の赤の色付けと文字の書き込みはできるのですが、下段の黄色の色付けと文字の書き込みができません。X2:X1662をダブルクリックで黄色に、該当セルに「期間限定」の文字を入れるにはどうしたらよいか教えて下さい。
No.2ベストアンサー
- 回答日時:
こんにちは!
T列の色は「赤」、X列の色は「黄色」しか選択しないのですよね?
↓のような感じではどうでしょうか?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, Range("T:T,X:X")) Is Nothing Then Exit Sub
With Target
If .Row < 2 Or .Row > 1662 Then Exit Sub
Cancel = True
If .Column = Range("T1").Column Then
If .Interior.ColorIndex = xlNone Then
.Interior.ColorIndex = 3
.Value = "減免"
Cells(.Row, "B") = "a"
Else
.Interior.ColorIndex = xlNone
.ClearContents
Cells(.Row, "B").ClearContents
End If
Else
If .Interior.ColorIndex = xlNone Then
.Interior.ColorIndex = 6
.Value = "期間限定"
Else
.Interior.ColorIndex = xlNone
.ClearContents
End If
End If
End With
End Sub
※ B列はT列の色付けをなくした時点でデータ消去になっていますが、
X列は何も操作しなくてよいのですかね?m(_ _)m
No.1
- 回答日時:
こんにちは
あまりきちんと見ていませんが・・・
最初の
>If Intersect(Target, Range("T2:T1662")) Is Nothing Then Exit Sub
で、クリックしたセルがT列以外だと処理を終了していますよね?
それなので、X列云々の処理が実行されることは決してないということになっています。
処理を終了せずに、Elseなどで下の方の処理を行うような制御にしておけば宜しいのではないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのVBAでダブルクリックでチェックを入れたあと 1 2022/10/26 20:30
- Visual Basic(VBA) エクセルVBA ダブルクリックしたら色反転を指定したセルのみにしたい 2 2022/04/06 12:52
- Visual Basic(VBA) excel2021で実行できないマクロ。どこを直したらいいのか 2 2022/03/28 03:40
- Visual Basic(VBA) VBAのトグルボタンでのマクロについて質問です 3 2022/10/10 17:23
- Visual Basic(VBA) 【再投稿】VBAで動作しなくて困っています 2 2022/10/11 11:05
- Visual Basic(VBA) オブジェクトが見つかりません 1 2023/06/24 19:43
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Visual Basic(VBA) [Excel VBA] このコードでは行の挿入や行の消去をすると13のエラーが出てしまう。 3 2022/12/09 00:29
- Visual Basic(VBA) 【再々投稿】VBAのプログラムで動作しなくて困っています 8 2022/10/14 09:06
- Visual Basic(VBA) Worksheet_Change 4 2023/03/12 21:54
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
EXCELで 一桁の数値を二桁に
-
エクセル 同じ値を探して隣の...
-
お店に入るために行列に並んで...
-
「B列が日曜の場合」C列に/...
-
Excelで半角の文字を含むセルを...
-
Excelでの列比較(A列とB列の組...
-
エクセルで文字が混じった数字...
-
Excel 文字列を結合するときに...
-
2つのエクセルのデータを同じよ...
-
エクセル(勝手に太字になる)
-
エクセルで最初のスペースまで...
-
エクセル 文字数 多い順 並...
-
Excel、市から登録している住所...
-
Excelで、A列にある文字がB列...
-
エクセルの項目軸を左寄せにしたい
-
VBAで文字列を数値に変換したい
-
エクセルの表から正の数、負の...
-
エクセルで、列の空欄に隣の列...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで二つの数字の小さい...
-
PowerPointで表の1つの列だけ...
-
EXCELで 一桁の数値を二桁に
-
Excelで半角の文字を含むセルを...
-
2つのエクセルのデータを同じよ...
-
エクセル 文字数 多い順 並...
-
エクセルで文字が混じった数字...
-
エクセルで最初のスペースまで...
-
「B列が日曜の場合」C列に/...
-
エクセル(勝手に太字になる)
-
エクセルの項目軸を左寄せにしたい
-
Excel 文字列を結合するときに...
-
エクセルのセル内の文字の一部...
-
【VBA】特定列に文字が入ってい...
-
Excel、市から登録している住所...
-
文字列に数字を含むセルを調べたい
-
エクセルの表から正の数、負の...
-
VBAで文字列を数値に変換したい
-
エクセルで、列の空欄に隣の列...
-
オートフィルターをかけ、#N/A...
おすすめ情報