| 
    
     |  | 初めまして。 最近ExcelVBAでのアプリケーション開発の仕事を始めた者です。
 アルゴリズムというか、フローは思いつくのですが、
 どういう関数やコードをどのように使うの、というところが追いついていません。
 日々、ヘルプとネットで奮闘中です。
 
 早速ですが、お知恵を拝借したいことがございます。
 例えば学校や塾で成績の一覧表を作成する時なのですが...
 
 Sheet1がデータ入力シート
 sheet2がマスター定義シートです。
 
 sheet2の構造は、
 ID|学年|クラス|氏名 となっています。
 そしてSheet1に成績データを取り込んで集計を行うのですが、
 sheet1のA列に生徒のIDが入るので、
 B列→学年
 C列→クラス
 D列→氏名
 の各データを、sheet2のマスターからもってきます。
 ここまでならVLOOKUP関数を使えばできるのですが、
 成績データ側に、マスター上存在しないIDデータが含まれることがあります。
 このようなときには、D列に「該当ナシ」と表示されるようにしたいのです。
 (B,C列は空白)
 
 VLOOKUP関数だけでは不可能だと思い、
 「sheet1A列の入力データがsheet2A列に存在する個数」
 を返すユーザ定義関数(仮にstrFindと名づけます)を作成し、
 StrFind関数の結果が1以上になった場合はVlookup関数で引っ張ってきたデータを表示、
 結果が0になった場合は「該当ナシ」(B,C列は空白)という表示をさせようと考えているのですが、
 もし、もっと効率のよい方法がありましたらご教授いただければ幸いです。
 よろしくお願いいたします。
 
 (Ver.情報)
 OS:WinXP Pro(SP2)
 Excel:Excel2000
 
 
 |  |