エクセルの学校 の過去のログより引用。
※ 『複数の条件に合うデータの最小値』
A列が田中、B列が男である、C列の日付の最小値の求め方を教えてください。
A B C 田中 男 2007/05/02 鈴木 男 2007/02/25 田中 男 2007/10/07 田中 男 2007/09/15 田中 女 2007/06/09 今まで下記のように最大値を求めていたのですが、MINにした場合、最小値が「0」が返ってしまいます
- 2007/10/07 {=MAX((A1:A5="田中")*(B1:B5="男")*C1:C5)}
- 1900/01/00 {=MIN((A1:A5="田中")*(B1:B5="男")*C1:C5)}
> (A1:A5="田中")*(B1:B5="男")*C1:C5
これで返される配列は
5/2 ; 0 ; 10/7 ; 9/15 ; 0
ですので、一番小さい値は「0」になります。
配列数式ですので、こんなのは如何でしょう?
=MIN(IF((A1:A5="田中")*(B1:B5="男"),C1:C5,""))
MAX関数も同じ事が出来ます。
=MAX(IF((A1:A5="田中")*(B1:B5="男"),C1:C5,""))
大きい・小さいではなく、数値以外は除外(無視)が正しいのかな?
※ Excel2010:配列数式とは (教えて!Helpdesk)
配列数式とは
配列とは、複数のセルの集まりです。
配列数式とは、配列(複数セル)を対象に、1つの数式を作成する式です。
配列数式で使う対象範囲(引数)は、全て同じ行数/列数である必要があります。
配列数式は、1つ1つのセルを対象に計算するしかない、といった場合に活躍します。
※ 今日の結論
「配列数式とは」で、説明だけでは益々解らないくなるが、具体例を読むと解ったような気がする。
次回は、実際の例に当てはめてみる...