- ベストアンサー
エクセルのVLOOKUP関数には制約が!?
例えば1000番から2000番までのレコードがランダムに並んでいるとします。1500番のレコードを別のシートに抽出したいのですが、何か適切な関数はあるでしょうか? VLOOKUP関数だと、検索対象が昇順に並んでいないとうまくいきませんよね? アドバイスお待ちしておりますm(_ _)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 Sheet1のA1~D1000にリストがあるとして、Sheet2のA1に 1500 、B1等に =VLOOKUP(A1,Sheet1!A1:D1000,3,0) のように入れるとOKです。 最後の 0 は FALSE の意味で完全マッチです。 データがない場合に #N/A エラーが変えるのが嫌なら、ISERROR関数やISNA関数を組み合わせると良いです。 =IF(ISERROR(VLOOKUP(A1,Sheet1!A1:D1000,3,0)),"",VLOOKUP(A1,Sheet1!A1:D1000,3,0))
その他の回答 (1)
- grumpy_the_dwarf
- ベストアンサー率48% (1628/3337)
回答No.1
検索の型(4番目の引数)がFALSEなら、昇順に並んでなくてもいいんですよ。 そもそもここをFALSEにしておかないと目的の値が見つからない時に勝手に 近い値を見つけていいかげんな結果を返すので、普通は必ずFALSEにします。 省略するとTRUE扱いってのは迷惑な仕様ですね。
質問者
お礼
お返事ありがとうございました。 まだまだ未熟!を実感しました^^; これならいけます!ありがとうございました。
お礼
あ、なるほど!FALSEというのがあるんですね。これならいけそうです!ありがとうございました。