- ベストアンサー
ご質問お願いいたします。VLOOKUPのように数字を抽出したいのですが
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 余計なお世話だったらごめんなさい。 表内の数値がぴったりの場合は問題ないと思いますが。 私の考えすぎかもしれませんが、表に載っていない中間値もあるのではないかと思います。 もしそうであれば数値に範囲を持たせてその範囲内にある場合のA列のデータを表示させる方法です。 ↓の画像で説明させていただきます。 G3セルに =IF(COUNTBLANK(G1:G2),"",INDEX(A2:A23,MATCH(G2,OFFSET(A2:A23,,MATCH(G1,B1:D1,0),,1),-1))) という数式を入れています。 これで画像では「B列」の「1915」という数値の場合はA列の「2900」という値を返しています。 表内には「1915」という数値はありませんが、 G2セルに入力した値が、 B列の 1840 を超えて、1920以下の行になりますので、 その範囲内の最大値の行 ⇒ B列の1920(画像では4行目)がMATCHします。 A列の「2900」の行 を返す!という考え方です。 以上、長々と書きましたが かなり余計なお世話になる可能性がありますので その場合は無視してくださいね。m(__)m
その他の回答 (2)
- keithin
- ベストアンサー率66% (5278/7941)
Dを探したいなら =IF(COUNTIF(D:D,250),INDEX(A:A,MATCH(250,D:D,0)),"") Cを探したいなら =IF(COUNTIF(C:C,150),INDEX(A:A,MATCH(150,C:C,0)),"") それともBCD列を123番で指定してみたいなら =IF(COUNTIF(INDEX(B:D,0,X1),300),INDEX(A:A,MATCH(300,INDEX(B:D,0,X1),0)),"") #いまひとつ「どうしたい」のか,どこのセルにどんな具合に何を入れたらこんな具合で答えになって欲しいみたいな,あなたのヤリタイ事の姿が書かれてません。結果あーかなこーかなと回答者がイチイチ想像して,当てモノクイズになってますね。ご相談じゃなくて。
- MackyNo1
- ベストアンサー率53% (1521/2850)
必ず検索値があるという条件で、A~D列がすべて数字データなら以下の数式で求めることができます(検索値がG2セルに入力されている場合)。 =SUMPRODUCT(($B$2:$D$1000=G2)*A$2:$A$1000)
補足
ご回答有難う御座います。 こちらの表の数で御座いますが、変更する場合が御座いますので同じ数が出てくる可能性があります。 できれば列の条件(B,C,D)の条件も入れたいと思っております。 どうぞよろしくお願いいたします。
お礼
有難う御座いました。間違えて補足を付けてしまいました。とても満足しております。また、機会がありましたらよろしくお願いいたします。
補足
ありがとうございます。 大変解りづらくもうしわけございません。 再度ご質問お願いいたします。 例えば、A列の3100を抽出するには 条件:G1セルに D H1セルに 410が入ります。こちらは自動にアルファベットと数字がでてきます。 I1セルに3100がでるようにしたいと思っております。 なんども申し訳御座いません。どうぞご教授頂ければ幸いで御座います。