[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VLOOKUP関数について』(わたし)
こんなのじゃダメかしら^^; =VLOOKUP(C1+49,A1:B3,2) (キリキ)(〃⌒o⌒)b
>検索値のセル番地に+49を入れると#N/Aのエラーになるのですが・・ そうでしょうか? σ(^o^;)は、こんな感じでやりました。 [A] [B] [C] [D] [1] 50 1 100 2 [2] 100 2 [3] 150 3 C1 に検査値 D1 =VLOOKUP(C1+49,A1:B3,2) 検査値 50 : 1 51 : 2 100 : 2 101 : 3 となりましたが。。。 (キリキ)(〃⌒o⌒)b
もっと素直に次のようにしたほうが、すんなりすると思うのですが・・・。 50ごとという範囲にも制約されないし。(MOCHI)
[A] [B] [C] [D] [1] 1 1 100 2 [2] 51 2 [3] 101 3 C1 に検査値 D1 =VLOOKUP(C1,A1:B3,2)
>A1の値<検索値<=A2の値のときB2の2を返し という事は、検索値が50の場合には2を、100の場合には3を 返すという事でいいのですね? A列が昇順に並んでいる事が条件になりますが、キリキさんの表を無断借用してw =IF(AND(MIN($C1,$A$1:$A$3)=C1,COUNTIF($A$1:$A$3,$C1)=0),"検索値 要確認!", VLOOKUP(OFFSET($A$1,MATCH($C1,$A$1:$A$3,TRUE),0),$A$1:$B$3,2,FALSE)) 改行してます。 (sin)
意図と矛盾してたので、こっちに替えて下さい。 =IF(OR($C1="",MAX($C1,$A$1:$A$3)=C1),"検索値???", VLOOKUP(IF($C1<$A$1,50,OFFSET($A$1,MATCH($C1,$A$1:$A$3,TRUE),0)),$A$1:$B$3,2,FALSE)) (sin)
キリキさんは、しばらくお忙しいらしいので、代理です。 >検索先セル番地+49でなぜ正しい値が返ってくるのかわかりません。 ●VLOOKUP関数のヘルプの抜粋ですが、 [検索の型] 検索値と完全に一致する値だけを検索するか、その近似値を含めて検索するかを、論理値で指定します。 TRUE を指定するか省略すると、検索値が見つからない場合に、検索値未満で最も大きい値が使用されます。 FALSE を指定すると、検索値と完全に一致する値だけが検索され、見つからない場合はエラー値 #N/A が返されます。 とあります。今回の式 =VLOOKUP(C1+49,A1:B3,2) では、 検索の型を省略することで、検索値未満で最も大きい値を返したいから省略しています。 ●上記の『検索値未満で・・・』という部分は、 +49する事で、50の場合は、99となり{50,100,150}では、50を 51の場合は100となり100を見つけ出すという事になります。 もし、検索値(C1セル)が整数とは限らない場合には、別の方法を提示されたと思います。 仮にC1セルに50.5と入力されると、+49で99.5となり、50を見つける事になりますから・・・。
また、私の条件の解釈が違っている模様ですので、私が提示している式はポイして下さい。 なにせ、C1セルに100を入力すると、D1は、3 になりますから・・・ ※これを求める為に細工してあるだけです。高度とはかけ離れてますし。。。 (sin)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.