条件に合うデータを抽出できる数式でOR条件を範囲指定する

「条件に合うデータをすべて順に抜き出す数式」を解説する9ページ目です。

 

ここでは、条件に合うデータをすべて順に抜き出す数式で、OR条件の条件値を範囲指定できる方法を解説します。

 

方法は簡単なので、読めばすぐに分かります。

 

なお、解説の1ページ目を見るにはこちらです。

⇒1ページ目へ

本記事はアフィリエイト広告を含みます

1.まずは数式の基本形を確認

まず、条件に合うデータをすべて抜き出せる数式の基本形は、次の通りです。

=IFERROR(INDEX(抽出対象の列,1/LARGE(INDEX((条件式)/ROW(条件範囲),0),ROW(A1))),"")

引数は、「抽出対象の列」、「条件式」、「条件範囲」の3つです。

 

OR条件にする場合には、ここから少し形が変わります。

 

なお、数式の基本的な作り方を見たい場合には、2ページ目を参照してください。

⇒2ページ目へ

2.OR条件の条件値を範囲指定できる数式は

数式の形は、条件値の範囲が「行方向」に入力されているか、「列方向」に入力されているかで少し違うので、それぞれ見てみます。

 

2-1.条件値が行方向に入っている場合

数式の形と例を見てみます。

 

2-1-1.数式の形は

条件値が縦(行方向)に入っている場合、数式は次のようになります。

{=IFERROR(INDEX(抽出対象の列,1/LARGE(INDEX((条件範囲=TRANSPOSE(条件値の行範囲))/ROW(条件範囲),0),ROW(A1))),"")}

引数は、「抽出対象の列」、「条件範囲」、「条件値の列範囲」の3つです。

 

基本的な数式の形と引数が違うのは、「条件値の行範囲」ですが、ここには「条件値の入った行の範囲を1列」指定します。ちなみにここは「$」を4つ付けて「絶対参照」にします。

 

また、数式両端の「{}」は手入力ではありません。数式入力後に「ShiftキーとCtrlキーを押しながらEnterキーを押す」ことで、配列数式にした結果付くものです。

 

なお、上の数式をコピー・貼り付けて、引数の所を直すと簡単だと思います。

 

具体的な数式の形は、次の例を確認してください。

 

そして、指定の仕方の説明は、2ページ目を見てください。

⇒2ページ目へ

 

2-1-2.例で確認

一つ例を見てみましょう。

上の表から、「部署名が『総務部』か『経理部』のデータ」を抜き出した場合で、セルI4・5にある値を条件値にした時、セルA15に入る数式は、次のようになります。

{=IFERROR(INDEX(A:A,1/LARGE(INDEX(($F$4:$F$9=TRANSPOSE($I$4:$I$5))/ROW($A$4:$A$9),0),ROW(A1))),"")}

これで、OR条件の条件値を範囲指定できます。

2-2.条件値が列方向に入っている場合

数式の形と例を見てみます。

 

2-2-1.数式の形は

条件値が横(列方向)に入っている場合、数式は次のようになります。

{=IFERROR(INDEX(抽出対象の列,1/LARGE(INDEX((条件範囲=条件値の行範囲)/ROW(条件範囲),0),ROW(A1))),"")}

今度は、TRANSPOSE関数がいらなくなり、「条件値の入った範囲」を、「$」を4つ付けて「絶対参照」にします。

 

また、やはり数式入力後に「ShiftキーとCtrlキーを押しながらEnterキーを押す」ことで、配列数式にします。

 

なお、上の数式をコピー・貼り付けて、引数の所を直すと簡単だと思います。

 

具体的な数式の形は、次の例を確認してください。

 

そして、指定の仕方の説明は、2ページ目を見てください。

⇒2ページ目へ

 

一つ例を見てみましょう。

2-1-2.例で確認

上の表から、「部署名が『総務部』か『経理部』のデータ」を抜き出した場合で、セルI4・J4にある値を条件値にした時、セルA15に入る数式は、次のようになります。

{=IFERROR(INDEX(A:A,1/LARGE(INDEX(($F$4:$F$9=$I$4:$J$4)/ROW($A$4:$A$9),0),ROW(A1))),"")}

これで、OR条件の条件値を範囲指定できます。

 

以上、参考になれば幸いです。

⇒ 次ページ「OR条件以外の指定方法」へはこちら

7
8
9
10
11
12

口コミ・評判のいいExcel本の紹介】


Top