[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『文字列が一致した場合、数値を返す』(sion)
お世話になります。
指定したセルの文字列(品名)が検索範囲の文字列と一致した場合にその隣の数値(出力用数値)を(出力部分)に標示したいのですが、なにか方法は有りませんでしょうか。
A B 〜 AA AB 1 [品名] [出力部分] 〜 [検索範囲] [出力用数値] 2 [品名] [出力部分] 〜 [検索範囲] [出力用数値] 3 [品名] [出力部分] 〜 [検索範囲] [出力用数値] 4 [品名] [出力部分] 〜 [検索範囲] [出力用数値]
Excel2003 WindowsXP
> 指定したセルの文字列(品名)が検索範囲の文字列と一致した場合にその隣の数値(出力用数値)を(出力部分)に標示したい
これは、A列の品名が「同じ行の」AA列の値と一致していたら、B列に AB列の値を表示 ということなのか? A列の品名が AA列のすべてのデータ行範囲のどれかの文字列と一致していたら? ということなのか? [品名]が [検索範囲]文字列と「完全一致」なのか 「含まれる」なのか? が、不明です。 いずれにしても、B列に IF関数 とか VLOOKUP 式 でできることのような気がします (ka)
A B 〜 AA AB 1 [い] [出力部分] 〜 [あ] [123] 2 [う] [出力部分] 〜 [い] [456] 3 [え] [出力部分] 〜 [え] [789] 4 [お] [出力部分] 〜 [か] [1000]
A列の品名がAA列のデータ範囲内のどれかの文字列と完全一致していたら検索した行の隣のセルの数値をBに出力したいのですが、
自分で書いててわかりにくいので、
A列の文字が[い]だった場合 AA列を検索して同じ文字列[い]を探し
B列の[出力部分1]にAB列の[456]という数字を表示させたいんです。
A B 〜 AA AB 1 [い] [出力部分1] 〜 [あ] [123] 2 [う] [出力部分2] 〜 [い] [456] 3 [え] [出力部分3] 〜 [え] [789] 4 [お] [出力部分4] 〜 [か] [1000]
IF関数も試したのですが検索用のAA列の行数が多くIF関数だけでは対応出来ませんでした。
VLOOKUPも試したのですが、どうしても上手くいかず質問させて頂きました。
解決しましたか? 普通にVlookupで対応できると思います。 B1のセルに「=Vlookup(A1,AA:AB,2,false)」と入力すればよいと思います。
注意点としては、 ◆AA列内で重複がないか <-- 重複がある場合、該当のAB列の上の数字のみが反映されます。 ◆AA列が昇順で並んでいか <--そうでなくても大抵うまく参照するが、うまくいかない場合もある。
みりぃ
ちょっと気になりましたので・・・。
>◆AA列が昇順で並んでいか <--そうでなくても大抵うまく参照するが、うまくいかない場合もある。 と言う事ですが・・・ VLOOKUP関数の「検索の型」にFALSEを指定した場合 範囲の左端の列がどの順番であっても上手くいかない場合は上手く行かないと思います。
例えば、範囲の左端の列が昇順で並んでいる場合で 「FALSEで上手くいかないが、TRUEではうまく行く」 と言う事は有るかもしれませんが 完全一致で検索をするのなら 「上手くいったから良いや」でTRUEで使用するのは危険が有るように思います。
検索の型にFALSEを指定して、上手く参照出来ない場合は 検索値が範囲の左端の列に無い場合です。
例えば、「表示だけ変わっていて、本来入っている値は違う」 「数値と数字の違い」や「気付きにくいが、実はスペースが入っている」等 エクセルと、人との間にどの様な思い違いがあるのかは 調べてみないと分かりませんが、違いが有るのは確かです。
ですので、その場合は 式の方を変えるのではなく 原因を突き止め、改善するのが良いと思います。
ここは細かい所なので、再度書いておきますが ==↓エクセルヘルプからの抜粋↓=============== 検索の型に TRUE を指定した場合、範囲の左端の列のデータは、 昇順に並べ替えておく必要が【あります。】 検索の型 に FALSE を指定した場合は、範囲のデータを 並べ替えておく必要は【ありません。】
(HANA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.