[[20070514232656]] 『文字列でも数値でもVLOOKUPで表示させたい』(ノム) ページの最後に飛ぶ

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

 

『文字列でも数値でもVLOOKUPで表示させたい』(ノム)

次の関数で判断させています。文字列はOKですが数値は「対象データなし!」となります。

=IF(A11="","",IF(ISERROR(VLOOKUP(LEFT(A11,2), data!$E$2:$F$40, 2, FALSE)),"対象データなし!",VLOOKUP(LEFT(A11,2),data!$E$2:$F$40, 2, FALSE)))

このとき整理番号8桁は 10100001 は 頭に 0 を追加して 010100001 9桁に変換しています。

これは 'と8桁の 10100001 を結合させ、更に0を結合させています、当然文字列となります。

この条件以外は9桁で 500600472 のように数値のままです。

このように文字列と数値が入り混じったデータでも判断させたいのですが?

どうぞお助けください。

(ノム)


 整理番号はA11でしょうか。。。
 整理番号の入るセルの書式→ユーザー定義を 000000000 としてみては如何でしょう。(gon-2)


(gon-2)さん、夜中に回答頂きありがとうございました。

ユーザー定義を 000000000  にしてみましたが認識しませんでした。

また、数値を文字列に書式変更してもだめです!

(ノム)


 この部分「VLOOKUP(LEFT(A11,2), data!$E$2:$F$40, 2, FALSE)」で
 A11とE2:E40のデータ形式を一致させる必要があると思います。

 LEFT(A11,2) は文字列を返しますから、data!$E$2:$F$40のE2:E40も文字列になっている必要があります。
 E2:E40を選択して、データ→区切り位置のウィザード3/3で列データ形式を文字列にして完了。
 とすればE2:E40は文字列になります。

 E2:E40が数値であれば=VLOOKUP(LEFT(A1,2)*1,$E$1:$F$39, 2, FALSE)としたらいかがでしょう。

 なお、「数値を文字列に書式変更してもだめです!」のように書式を変更しても
 データ形式は変更されない時がありますので注意が必要です。
 データ型はTYPE関数で調べることができます。   (Hatch)


(Hatch)さんありがとうございました。

ご指摘の通りでした、私の検討不足で質問したようです。

もっと考えて質問しないといけませんネ。

また、数値であった場合の方法もご教授頂き参考になりました。

(gon-2)さん、(Hatch)さん 質問に答えて頂き本当にありがとうございました。

 (ノム)


コメント返信:

[ 一覧(最新更新順) ]


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