• ベストアンサー

VLOOKUPで別ファイルから検索その3

D7セルに下記のような数式を入れました。 =IF(D1="","",VLOOKUP(D1,'K:\資料\[名簿.xls]Sheet1'!$A$2:$F$10000,2,0)) 名簿.xlsは   A     B     C    D    E       F    G 顧客NO. 顧客名 フリガナ 住所 郵便番号 電話番号 備考 を入力した住所録なのですが、試しに5件分ほど作ってみたところ、うまくいきました。 ところが、実際に900件ほど作ってみたところ、D7セルに、#N/Aの表示が出てしまいます。 どうして件数を増やすと機能しないのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#99913
noname#99913
回答No.2

単に検索値が見つからないだけでは? 検索の型にFalse(0)を指定すると、完全に一致したものだけを探し、見つからなければN/Aエラー値が返されます。 ところで、式は次のようにしたほうがいいのでは。 =IF(D1="","",VLOOKUP(D1,'K:\資料\[名簿.xls]Sheet1'!$A:$F,2,False)) これだと、A列からF列のすべての行から検索でき、後でデータが増えたとき(10000を超えたとき)に書き直さずに済みます。

yunako0517
質問者

お礼

問題は解決しておりませんが、ひとまず質問を締め切ります。 お二人とも回答ありがとうございました。 またよろしくお願いします。

yunako0517
質問者

補足

回答ありがとうございます。 中身を同じように作っている名簿ファイルがもうひとつあるのですが、そちらのデータを使えばうまくいきました。 中身の違いとしては、入力内容とセル幅とセルの着色の違いくらいで、色はどちらも旧バージョンのエクセルに対応している色を使っています。 セルの書式も変えていないし、入力内容の違いと言えば、住所変更したために書き換えていることくらいです。 どうしてでしょう?

その他の回答 (1)

  • syuyama
  • ベストアンサー率34% (72/209)
回答No.1

ちょっと、なぜうまくいかないのかは分かりませんが、 ためしに以下の関数に変えてみてください。 =IF(D1="","",VLOOKUP(D1,'K:\資料\[名簿.xls]Sheet1'!$A:$F,2,FALSE))

yunako0517
質問者

お礼

回答ありがとうございます。 教えていただいたように書き換えてみましたが、ダメでした。 やはり#N/Aが出てしまいます。

関連するQ&A