プロが教えるわが家の防犯対策術!

excelの関数で行き詰っているので教えてください<(_ _)>

リストから複数列の条件に一致したものの値を全て、上から順に表示させたいのですが、
色々関数を組み合わせてみたりしているのですがうまくいきません。
どなたかご教授いただけないでしょうか。

画像中E2セル以下にA列とB列の複数の条件に一致したC列の値を上から順に全て抜き出したいです。
何卒よろしくお願いいたします。

「Excelの関数について 複数の条件に一」の質問画像

A 回答 (5件)

こんにちは



こんにちは

すでに回答が出ていますが・・・

E2セルに
=IFERROR(INDEX(C:C,AGGREGATE(15,6,INDEX(ROW(A$2:A$99)/(A$2:A$99="AAA")/(B$2:B$99=444),,),ROW(A1))),"")
を入力して、下方にフィルコピーでもいけると思います。
(配列数式にする必要はありません)
    • good
    • 0
この回答へのお礼

うまくできました!
AGGREGATE関数とか2つ目のINDEXの後の割り算とかもうぜんぜんそういう発想がなかったです…大変勉強になりました。ありがとうございました!

お礼日時:2019/11/15 16:08

E2: =IFERROR(INDEX(C$1:C$12,SMALL(IF((A$2:A$12="AAA")*(B$2:B$12=444),ROW(A$2:A$12)),ROW(A1))),"")


【お断り】上式は必ず配列数式として入力のこと
    • good
    • 0
この回答へのお礼

ありがとうございます!うまくいきました!助かりました!

お礼日時:2019/11/15 16:08

D列にSeq.No.を入れてA列とB列でソートすれば、あとはコピペで。

終わったらD列でまたソートをかければもとにもどる。
    • good
    • 0
この回答へのお礼

ありがとうございます!仕組み上どうしても関数でやる必要があったのですが、いただいた方法も見てみます!

お礼日時:2019/11/15 16:08

こんばんは!



画像の配置だと、E2セルに
=IFERROR(INDEX(C$1:C$1000,SMALL(IF((A$1:A$1000="AAA")*(B$1:B$1000=444),ROW(A$1:A$1000)),ROW(A1))),"")

配列数式なので、Ctrl+Shift+Enterで確定!(←必須★)し
フィルハンドルで下へコピーしてみてください。m(_ _)m
    • good
    • 0
この回答へのお礼

うまくいきました!配列が苦手で…一つ一つの関数をもっと深く理解してないとダメですね。勉強になりました。ありがとうございました!

お礼日時:2019/11/15 16:08

http://www.eurus.dti.ne.jp/~yoneyama/Excel/filte …

オートフィルタでA列・B列の値を決め抽出されたC列の値のセルを選択しコピペするとかではダメですか?
    • good
    • 0
この回答へのお礼

ありがとうございます!仕組み上どうしても関数でやる必要があったのですが、フィルタでの方法も見てみます!

お礼日時:2019/11/15 16:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!