[[20050429123900]] 『VLOOKUPとLEFT関数の組み合わせで・・・・』(Kuro) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VLOOKUPとLEFT関数の組み合わせで・・・・』(Kuro)
 いつもお世話になっています。
 今、シート”注文”のA列に販売店コード、B列に注文商品、C列に注文数が入力されています。
 又、販売店コードは7桁で、頭の桁(一番上の桁)は地域番号です。
 シート”販売店”は、A列に地域番号、B列に地域が入力されています。具体的には、
 A列 B列
 1 東京
 2 東京
 3 大阪
 4 大阪
 5 名古屋
 6 東京
 7 大阪
 8 名古屋

 その時、シート”注文”のD列にA列販売店の地域を表示させるために、
 D1セルに、=VLOOKUP(LEFT(A1,1),販売店!A1:B8,2,FALSE)と入力しましたが、
 #N/Aとなります。具体的には、セルA1;1342550の場合は、#N/Aとなりますが、
 セルA1に1を入力すると、”東京”と表示されます。
 この原因は何でしょうか?
 関数の使用法に問題があるのでしょうか? 宜しくお願いします。

 LEFT(A1,1)の値は文字列となります。
 A列の1,2,3・・・が数値だとそのようになります。

 =VLOOKUP(LEFT(A1,1)*1,販売店!A1:B8,2,FALSE)
                    ~~~~
 のようにすると、正しく表示されませんか。
 (sato)

 ご質問の事例のように参照先が、1から8までと順に並んでいる場合には、
 =INDEX(販売店!B1:B8,LEFT(A1))とするのもよいかもしれません。      (LOOKUP)

 =INDEX(列範囲,行番号)の行番号は、文字列でも対応できます。
 また、=LEFT()や=RIGHT()は、第2引数を省略しますと、1桁の意味になります。

=VLOOKUP(value((LEFT(A1,1)),販売店!A1:B8,2,FALSE)


ありがとうございました。早速やってみたところ、*1,VALUEはできました(納得!)。ただ、INDEXはできませんでした。何故?不明です。
(Kuro)

 >INDEXはできませんでした。何故?不明です。
 私も不明ですね。                             (LOOKUP)

もう一度やってみたら、出来ました! 前回の原因は不明ですけど。
どうも有難うございました。
(Kuro)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.