|
▼独覚 さん:
ご丁寧に応用例までご教授いただき、ありがとうございました!
色々と勉強になります。
>▼コーヒー さん:
>Exit Sub
>はそこでマクロを抜ける命令です。
>
>なので今のままでは
>>If Intersect(Target, Range("A2:A10000")) Is Nothing Then Exit Sub
>で、TargetがA2:A10000以外の場合、そこでマクロを抜けてしまってマクロを終了することになります。
>
>回避策としてはいくつかありますがたとえば
>
>Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
>
> If Not Intersect(Target, Range("A2:A10000")) Is Nothing Then
>
> If Target.Value = "" Then
> Target.Value = Date
> Cancel = True
> End If
> ElseIf Not Intersect(Target, Range("H2:H10000")) Is Nothing Then
> If Target.Value = "" Then
> Target.Value = "●"
> Cancel = True
> End If
> End If
>
>End Sub
>
>としてみたり、フラグを追加して
>
>Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
> Dim CHK_FLG As Boolean
>
> CHK_FLG = True
> If Intersect(Target, Range("A2:A10000")) Is Nothing Then CHK_FLG = False
>
> If CHK_FLG Then
> If Target.Value = "" Then
> Target.Value = Date
> Cancel = True
> End If
> Exit Sub
> End If
>
> CHK_FLG = True
> If Intersect(Target, Range("H2:H10000")) Is Nothing Then CHK_FLG = False
>
> If CHK_FLG Then
> If Target.Value = "" Then
> Target.Value = "●"
> Cancel = True
> End If
> End If
>
>End Sub
>
>で、どうでしょうか?
>後者の場合は処理の追加に対応しやすいです。
|
|