|
>gyou = WorksheetFunction.Match(Sheets("入力").Cells(kazu, 2), Sheets("データ").Range("D1:D65536"), 0)
>retu = WorksheetFunction.Match(Sheets("入力").Range("B1"), Sheets("データ").Range("A1:IV1"), 0)
日付の入ったセルを検索値として、日付の入ったセルをMatchさせるには、
まず、どちらのセルも年号から記述されていることが前提になります。
また、Matchを使って、検索値の指定にセルを指定するだけではだめです。
例えば、
Match(Sheets("入力").Cells(kazu, 2),・・・
の部分は、シリアル値で指定する必要があります。
Sheets("入力").Cells(kazu, 2)
↓
CLng(Sheets("入力").Cells(kazu, 2).Value)
もしくは、
Sheets("入力").Cells(kazu, 2).Value2
それと、
エクセル関数使用時にWorksheetFunctionをつけると、一致する物が見つからない場合、実行エラーになります。
回避方1
Dim Ans As Valiant
Ans = Application.Match(Sheets("入力").Cells(kazu, 2).Value・・・・
If iserror(Ans) Then
Msgbox "見つかりません。"
end if
とか。
|
|