ここから本文です

excel2013で同一シートで2つのイベントプロシージャを動かしたいのですが、2つ目が...

アバター

ID非公開さん

2018/6/1713:59:40

excel2013で同一シートで2つのイベントプロシージャを動かしたいのですが、2つ目が動きません。

1つ目はダブルクリックで○
2つ目は別の列をダブルクリックすると現在の年月日を取得

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _
Cancel As Boolean)
If Intersect(Target, Range("K:L")) Is Nothing Then Exit Sub
Cancel = True
With Target
If .Value = "〇" Then
.ClearContents
Else
.Value = "〇"
End If
End With

If Intersect(Target, Range("D5:D1000")) Is Nothing Then Exit Sub
Cancel = True
With Target
If .Value = "" Then
.Value = Date
Else
.Value = ""
End If
End With
End Sub

何が悪いのでしょうか?

閲覧数:
26
回答数:
1
お礼:
250枚

違反報告

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

kei********さん

2018/6/1714:17:14

2つ目が動かないのは、
If Intersect(Target, Range("K:L")) Is Nothing Then Exit Sub
Range("D5:D1000")をダブルクリックした時点で、上記コードによりEnd Subとなるためです。

Not Intersect(Target, Range("K:L")) Is Nothing
のようにすると良いです。

If Not Intersect(Target, Range("K:L")) Is Nothing Then
Cancel = True
With Target
If .Value = "〇" Then
.ClearContents
Else
.Value = "〇"
End If
End With

ElseIf Not Intersect(Target, Range("D5:D1000")) Is Nothing Then
Cancel = True
With Target
If .Value = "" Then
.Value = Date
Else
.Value = ""
End If
End With
End If

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

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

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

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

閉じる

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

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

閉じる