|
もう見てないかな・・
>>Private Sub Workcheet_Change(ByVal Target As Range)
> ↑Worksheetでは?
ここだけならいいのですが・・・
>F10は日付(シリアルの)ですか?
にも回答がないので
Jakaさんからも注意がありますが、
一応コードのコメントを入れておきます。
もう一度、意味を理解して、そちらにあうように書き直してください。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim アドレス As Variant
’入力されたセルが
With Target
’値がなければ、何もしないで抜ける
If IsEmpty(.Value) Then Exit Sub
’入力されたデータが日付型と判断できなければ 何もしないで抜ける
If Not IsDate(.Value) Then Exit Sub
End With
’入力されたセルがF10と重なっていなければ、何もしないで抜ける
If Application.Intersect(Target, Range("F10")) Is Nothing Then Exit Sub
’上記以外の時、シートイベントの中止
Application.EnableEvents = False
アドレス = Application.Match(Range("F10").Value2, Columns(1), 0)
If Not IsError(アドレス) Then
Cells(アドレス, 1).Select
End If
’ここはセレクトしないでF10の値をクリアする。
Range("F10").ClearContents
’シートイベントを再開
Application.EnableEvents = True
End Sub
|
|