ここから本文です

1回のダブルクリックで二つのマクロを実行したい。 1つ目 Private Sub Workshe...

qqt********さん

2014/1/1716:03:11

1回のダブルクリックで二つのマクロを実行したい。
1つ目
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column <= 3 Then
Cancel = True
End If
End Sub

二つ目
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const Hani = "A1:C20"
Const Iro As Variant = 6
Dim Rng As Range
Set Rng = Intersect(Range(Hani), Target)
If Not Rng Is Nothing Then
Cancel = True
If Rng.Interior.ColorIndex = xlNone Then
Rng.Interior.ColorIndex = Iro
Else
'If Rng.Interior.ColorIndex = Iro Then Rng.Interior.ColorIndex = xlNone
End If
End If
Set Rng = Nothing
End Sub

上記2つの動作を1回のダブルクリックで実行されるようにしたいです。
尚、1つ目のマクロは前回の質問でお答え頂いたものです。
よろしくお願い致します。

補足1つ目のマクロでは、
選択したセルを赤色にかえること
2つ目のマクロでは、
上記で選択したセルと同じ値を同じ行の空白セルに返したい
です。
よろしくお願いします!

閲覧数:
576
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

るたさん

2014/1/1717:07:53

ダブルクリックキャンセルはA~C列全体で、色はA1:C20に着色するという場合です。

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const Hani = "A1:C20"
Const Iro As Variant = 6
Dim Rng As Range

If Target.Column <= 3 Then
Cancel = True
End If
Set Rng = Intersect(Range(Hani), Target)
If Not Rng Is Nothing Then
If Rng.Interior.ColorIndex = xlNone Then
Rng.Interior.ColorIndex = Iro
Else
'If Rng.Interior.ColorIndex = Iro Then Rng.Interior.ColorIndex = xlNone
End If
End If
Set Rng = Nothing
End Sub

質問した人からのコメント

2014/1/19 21:32:35

降参 ありがとうございます!!!!

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる