ユーザー関数を使って、シートの羅列されているデータを検索して、取り出そうとしています。
シート s_indexのA列にキー部分のデータを作成してあって、シート s_dataにデータがあります。
こんな関数です。
Function Kensaku(f_Jcd, f_Kamoku, f_retsu)
Dim W_Index As String, W_Match As Single, W_Kekka As Single
On Error GoTo NASHI
W_Index = f_Jcd & f_Kamoku
's_indexのA列から一致する行をさがす。
W_Match = Application.WorksheetFunction. _
Match(W_Index, Worksheets("s_index").Range("A:A"), 0)
Kensaku = Application.WorksheetFunction. _
Index(Worksheets("s_data").Range("a1:by6500"), W_Match, f_retsu)
Exit Function
'検索不可能な場合
NASHI:
' なしの処理
End Function
中身はこんなもので、関数としては動きますが Excel2000で動かすと、再計算ができないんです。
Micrsoftサポートには、「ユーザー定義関数内で名前作成した場合の再計算について」という題で、index関数を使うとできないみたいな感じなのですが、何かいい方法はないでしょうか?
|