変わりたい組織と、成長したいビジネスパーソンをガイドする

会員登録をすると、編集者が厳選した記事やセミナー案内などをメルマガでお届けしますNIKKEIリスキリング会員登録最新情報をチェック

前回の例で、集計の条件として指定したのは、対象の表にもともと表示されている値だけだった。関数を使って求めるような値を条件として集計するには、「配列」を利用した、やや複雑な数式が必要となる(図1)。

図1 「販売」テーブル上に表示されていない「月」や「火」などの曜日情報 、「商品」テーブルから「販売」テーブルに取り出していない商品のブランド名などを条件として、データを集計することも可能だ。このような処理には「配列」を利用する

図1 「販売」テーブル上に表示されていない「月」や「火」などの曜日情報 、「商品」テーブルから「販売」テーブルに取り出していない商品のブランド名などを条件として、データを集計することも可能だ。このような処理には「配列」を利用する

ここではまず、「販売」テーブルの「日付」列に入力された日付が、指定した漢字1文字で表される曜日である行を集計の対象にしてみよう。

日付から曜日の漢字を求めるには、TEXT(テキスト)関数を利用する。その引数「値」の対象を「日付」列の範囲全体にすることで、複数の結果がセル範囲と同じサイズ(行数×列数)の配列として求められる。IF関数の条件判定にこの配列を指定すると、真の場合は同じ行の「売上額」列の値が、偽の場合は引数「値が偽の場合」を省略しているため、論理値FALSEが返される。最新版Excelでは、この結果の配列が、スピルによって同じサイズのセル範囲に表示される(図2)。以下の各数式も同様だが、Excel2019以前では、配列数式として入力する(「Ctrl」+「Shift」+「Enter」キーを押す。計算結果が複数の値(配列)になる場合は、その配列と同じサイズのセル範囲を選択して入力する)。

図2 TEXT関数の引数「値」に「日付」列を指定し、各日付の曜日を表す漢字1文字を1列の配列として取得。IF関数でその各要素がA2セルと等しいかを判定し、真の場合は同じ行の「売上額」列のセルの値、偽の場合は論理値「FALSE」からなる配列を求めた。最新版Excelでは、対象の列と同じ行数の範囲にスピルされる

図2 TEXT関数の引数「値」に「日付」列を指定し、各日付の曜日を表す漢字1文字を1列の配列として取得。IF関数でその各要素がA2セルと等しいかを判定し、真の場合は同じ行の「売上額」列のセルの値、偽の場合は論理値「FALSE」からなる配列を求めた。最新版Excelでは、対象の列と同じ行数の範囲にスピルされる

新着記事

Follow Us
日経転職版日経ビジネススクールOFFICE PASSexcedo日経TEST

会員登録をすると、編集者が厳選した記事やセミナー案内などをメルマガでお届けしますNIKKEIリスキリング会員登録最新情報をチェック