- ベストアンサー
HLOOKUP関数で検索値が複数セルにわたっている場合
下のような表があります。 | 50mm | 100mm | --------|--------|--------| 0≦θ≦2 | 280 | AA | 380 | DD | 2<θ≦4 | 300 | BB | 490 | EE | 4<θ≦6 | 450 | CC | 520 | FF | 縦の項目は「パイプの角度」、横の項目は「パイプの太さ」です。 別のセルに、例えば セルA1=3(←角度)、 セルB1=50mm(←太さ) と入力してある場合に、セルC1に「BB」と表示させるにはどうしたらいいのでしょうか。 太さの項目が結合されているせいか、Hlookup関数何度試みても300と表示されるばかりなのです。 ものすごく分かりにくい説明と表で恐縮ですが、どなたかご助言をお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
仮定 (1)シータ(角度)は0.01単位でとるものとする。(A1セル) 例えば3.002などないものとする。 (2)太さは50、100のどちらかしかとらないものとする。(B1セル)この点質問には書いてなくてあいまい。 2 100 DD 13.9 -1 50 100 0≦θ≦2 2 280 AA 380 DD 2<θ≦4 4 300 BB 490 EE 4<θ≦6 6 450 CC 520 FF とする。 B列に1列挿入し、B3に=RIGHT(A3,1)*1と入れてB5まで式を複写する。目障りなら列を非表示にしてB1、C1をC1,D1に移す。 結果上記の通り。 50,100mmは50,100と数値とし、表示形式で50mm、100mmを出すように改める。 B2にー1を入れる。目障りなら白色フォントにする。 中間結果を判りやすいように B8(どこでも良いが)に =MATCH(A1-0.001,$B$2:$B$5,1) 0.001を引いているのは、2,4の場合の値を、Match関数で1タイプ(第3引数)を使って、正しくするための苦肉の策です。0.001刻みの角度が入れば、1桁下げて0.0001にして影響が及ばないようにします。 B10((どこでも良いが)に =MATCH(B1,$C$2:$F$2,0)+1 と入れる。 セルC1に =INDEX($C$3:$F$5,B8,B10) と入れる。 理解できたら、C1の式の、B8,B10のところへ式を直接埋め込んでも良い) 結果はC1に DD テスト 別途A1の0.01刻み,B1の2種の表を別区画に作って、上記式で正しいか、十分テストしてみてください。 少数でテスト済み。全ケーステストしてないという意味で「自信なし」とします。 ちょっとてこずリました。
その他の回答 (1)
A B C D E F G H I J 1 3 50 BB 50 100 2 -6 4<θ≦6 450 CC 520 FF 3 -4 2<θ≦4 300 BB 490 EE 4 -2 0≦θ≦2 280 AA 380 DD E2: =-MID(F2,FIND("≦",F2,3)+1,9)*1 C1: =VLOOKUP(-A1,$E$2:$J$4,MATCH(B1,$G$1:$J$1,0)+2)
お礼
MATCH関数は使用したことがありませんでした。 やってみます。ありがとうございました。
お礼
大変丁寧なご説明ありがとうございました。 素人なものでかなり時間がかかりましたが、理解できました! 本当に有難うございました。