[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『LOOKUPでエラーになる…』(エクセリオン)
LOOKUPを使い表示させたいのですが、#N/Aか0しか表示されません。 関数をよく理解していない為、原因が分からないのでご協力願います。 sheet1にベンダーコード・ベンダー名・商品番号・商品名が下記のように入力されています。 ベンダーコード ベンダー名 商品番号 商品名 1 10 あ 100 か 2 20 い 200 き 3 30 う 300 く 4 40 え 400 け 5 50 お 500 こ
sheet2に商品の詳細とベンダーコード・製造者名が下記のように入力されています。 商品詳細 ベンダーコード 製造者名 1 zzzzz 10 A 2 xxxxx 10 B 3 ccccc 10 C 4 vvvvv 10 D 5 bbbbb 10 E 6 nnnnn 20 F
sheet3にベンダーコード・ベンダー名・商品番号・商品名・製造者名が「LOOKUP」で算出し表示されます。 ベンダーコード ベンダー名 商品番号 商品名 製造者名 1 10 あ 100 か A 2 10 あ 101 さ G 3 10 あ 102 た H 4 10 あ 103 な I 5 10 あ 104 は J
sheet3の商品番号が入力されると、 =LOOKUP(C1,sheet1!C:C,sheet1!A:A) ベンダーコードが表示 =LOOKUP(A1,sheet2!A:A,sheet1!C:C) 製造者名が表示
商品番号からベンダーコード・製造者名を出したいのですが、#N/Aか0としか返ってきません。 どうしてでしょうか?? 商品番号をLOOKUPではなく手入力した場合は正しく表示されます。 LOOKUPを用いるのが間違いなのでしょうか…? エクセル等弱いもので原因が分かりません。 説明が分かりづらく(直しても表が直らなく…)申し訳ありませんが、よろしくお願います。
こんばんは LOOKUPのヘルプには 検査値が見つからない場合、検査範囲内で検査値以下の最大値が、一致する値として使用されます。 検査値が検査範囲に含まれる最小値よりも小さい場合は、エラー値 #N/A が返されます。 と書いてあります。 また、 LOOKUP 関数が正しく機能するように、検索されるデータを昇順で並べ替える必要があります。昇順で並べ替えられない場合は、VLOOKUP、HLOOKUP、または MATCH の各関数の使用を検討します。 とも書いてありますので、MATCHを使った方がいいと思います。
Sheet3のセルA1に =IF(ISNA(MATCH($C1,Sheet1!$C:$C,0)),"",OFFSET(Sheet1!A$1,MATCH($C1,Sheet1!$C:$C,0)-1,0)) としてA1以下、B1以下、D1以下にコピーして下さい。
ただし、今の条件では製造者名は特定出来ないので、E列に設定する式は作れないです。 (ウッシ)
>LOOKUP 関数が正しく機能するように、検索されるデータを昇順で並べ替える必要があります。昇順で並べ替えられない場合は、VLOOKUP、HLOOKUP、または MATCH の各関数の使用を検討します。
とも書いてありますので、MATCHを使った方がいいと思います。
一応商品番号順にはなっています。
>Sheet3のセルA1に…
入力しましたが、何も表示されません(汗
=IF(ISNA(MATCH($C1,Sheet1!$C:$C,0)),"",OFFSET(Sheet1!A$1,MATCH($C1,Sheet1!$C:$C,0)-1,0))
↑商品番号 ↑ベンダーコード ↑商品番号
という事で良いんですよね?
>ただし、今の条件では製造者名は特定出来ないので、E列に設定する式は作れないです。
どうすれば、製造者名が出る式が出来ますか?
よろしくお願い致します。
(エクセリオン)
>どうすれば、製造者名が出る式が出来ますか?
ベンダーコード(10)からだけでは、製造者名がA、B、C、D、E と5社もあるので特定できないです。
エクセリオンさんはどうしてベンダーコード(10)から、1社に絞れるハズだとお考えですか?
そこをご説明いただかないと、回答側としてはどうしたらいいものか分かりません。
(半平太) 2012/12/03 23:38
こんばんは 提示されたシートの内容でテストしてますか? こちらでは結果が表示されています。 Sheet1に無い商品番号をSheet3に入力したら何も表示されません。
製造者名については 半平太さんのご指摘の通りです。 Sheet2の見直しが必要です。 (ウッシ)
横から失礼します 質問文から疑問点があります、整理して下さい
質問文から一部抜粋 >sheet3の商品番号が入力されると、 >=LOOKUP(C1,sheet1!C:C,sheet1!A:A) ベンダーコードが表示 >=LOOKUP(A1,sheet2!A:A,sheet1!C:C) 製造者名が表示 >商品番号からベンダーコード・製造者名を出したいのですが、#N/Aか0としか返ってきません。 >どうしてでしょうか?? >商品番号をLOOKUPではなく手入力した場合は正しく表示されます
手入力の場合正しく表示されるのですから、商品番号をLOOKUP関数でどの様に求めているのでしょう? 求めた値と sheet1!C:C の値が 文字・数値の違いがあるのではないですか?
>=LOOKUP(A1,sheet2!A:A,sheet1!C:C) 製造者名が表示 この式は正しいですか? セルA1はベンダーコードで、sheet2!A:Aは商品詳細 ですが正しいですか? また、sheet1!C:Cは商品番号ですが これで 製造者名が表示されますか? 正しい答えになるかどうかは別にして =LOOKUP(A1,sheet2!B:B,sheet2!C:C)
>商品番号からベンダーコード・製造者名を出したいのですが、#N/Aか0としか返ってきません。 エラーになるか、何らかの値が出ると思われますが 本当に0がでるのですか?
sheet3の 商品番号の求め方、 製造者名が表示の式 =LOOKUP(A1,sheet2!A:A,sheet1!C:C) が正しいかどうか? 本当に0がでるのですか? この3点について回答いただければと思います
>ベンダーコード(10)からだけでは、製造者名がA、B、C、D、E と5社もあるので特定できないです。
言われてみればそうですね…すみませんでした。
ウッシ様の計算式・By様よりご指摘頂いた所を直し、sheet2を作り直し表示が出来ました。
色々ありがとうございました。
(エクセリオン)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.