Excelの配列数式とは?

Microsoft Excelの「配列数式」とは一体何のことだかご存知でしょうか?配列とは複数のセルの集まりのことを指しており、配列数式とは「配列を対象にして一つの数式を作成する式」のことを指しています。入力時に「Ctrlキー+Shiftキー+Enterキー」を押すことから、各キーの頭の文字を取って「CSE形式」とも呼ばれることがあります。
配列数式で使用する引数は、すべて同じ行数・列数である必要があるので注意しましょう。配列数式には単一セルの配列数式(関数に直接セルの範囲を計算した結果を使用できる)と複数セルの配列数式(1つの配列数式でセルの範囲を計算した結果が行ごとの計算した結果となる)の二種類があり、どちらの数式もセルの範囲に対して計算を行います。
Excelの配列数式の使い方
配列数式を使用してみる





配列数式で複数条件を設定する場合
配列数式にて複数条件を設定したい場合ですが、「AND関数」・「OR関数」は使用できません。AND関数の代わりは「条件を()内に入力して*で連結する」・OR関数の代わりは「条件を()内に入力して+で連結する」となります。

画像の例で、商品が「チョコレート」かつエリアが「B」の場合のみ価格を合計して出力したいという場合には「=SUM(IF((B2:B9="チョコレート")*(C2:C9="B"),D2:D9,0))」と入力します。これで商品がチョコレートかつエリアがBのセルのみを抽出し、価格を合計して出力できますよ。
基本的に、条件を使用した配列数式のパターンは「{=関数(IF(配列条件,配列)}」となります。これを覚えておくと、配列数式で困ることも減るかと思います。
配列数式で使えない関数について
前述の通り配列数式においては「AND関数」・「OR関数」を使用することができませんが、他にも「COUNTIF関数」・「DSUM関数」・「RANK関数」・「SUMIF関数」などの関数は使用することができないことを覚えておきましょう。