【第5回/関数編】ARRAYFORMULAの基本と便利な使い方

Googleスプレッドシートを使いこなすうえで欠かせないのが「ARRAYFORMULA」。
複数のセルに一括で処理を行えるこの関数は、日々の作業効率を劇的に高めてくれます。今回は、ARRAYFORMULAの基本から、実務で活用できるテクニックまでを徹底解説します。
参考となる画像も載せていますので、画面を見ながら実際に作成してみましょう。
目次
ARRAYFORMULAとは?スプレッドシート独自の関数の特徴
「ARRAYFORMULA」は、Excelにはないスプレッドシート独自の関数となります。
その仕組みと基本的な使い方を理解することで、仕事の効率化に繋がります。
ARRAYFORMULA関数を使用するメリットは以下のものがあります。
- 関数の入力は一か所だけでOK
- オートフィルをしなくてももOK
- 関数を入力したい行が多い時に時短になる
- 使い方はシンプル
基本の使い方:シンプルな書式で理解する
構文を理解するだけで、ARRAYFORMULAはグッと身近になります。ただ、実際の使い方を見る前に、通常のExcelで数式を入れる例から見ることで理解がしやすくなります。
Excelで数式を入力する場合、上の画像のように単純な掛け算を行います。
数式は以下のようになります。
この状態でオートフィルでコピーします。
ARRAYFORMULA関数の数式
次はARRAYFORMULA関数で入力した方法を紹介します。完成図は以下のようになります。
大きな違いとしては、ARRAYFORMULAの関数を入れることと、計算式をセルだけではなく範囲にすることです。
数式は以下のようになります。
便利な点は、一つのセルだけに数式を入力するため、オートフィルでコピーする必要性がないことです。
セル範囲への自動展開のルールと注意点
処理されるセル範囲は関数内の指定に準じますが、空白や不一致がある場合は思わぬエラーにつながります。
ARRAYFORMULA関数のよくあるエラー(#REF!)
上の画像は先にD5のセルに300と入力した事例です。
数式の結果を出したいセルに、何かしたら文字や数値を入力していると#REF!のエラーになります。
エラーの対処法は簡単で、DELETEで文字や数値を削除しましょう。
関数ネストの基本:IF・TEXT・SPLITとの組み合わせ
ARRAYFORMULAは単独でも便利ですが、他の関数と組み合わせるとさらに強力な処理が可能になります。
特にIF関数やTEXT関数などと併用することが多いです。これら2つの関数については以下の記事に詳しく書いています。
よくある利用シーン3選
実務でよく使われる場面から、ARRAYFORMULAの活用イメージを具体的に紹介します。
①テキスト変換:複数列をまとめて整形(例:姓+名)
姓と名が分かれた列を、ARRAYFORMULAで一括して「姓 名」形式に整形可能です。
数式は以下のようになります。
②日付処理:複数の「年/月/日」セルを一括でフォーマット
年・月・日が分かれたセルをひとつにまとめて表示する際にも、ARRAYFORMULAは活躍します。
特にスプレッドシートでは膨大な量のデータを扱うことが多いため、オートフィルでコピーするよりも、一気に数式でまとめて作ることができます。
数式は以下のようになります。
TEXT関数は表示形式を指定することができるため、今回は2025/07/01というように/で囲むようにしました。
③IF関数で空白を非表示にする使用例
仕事で使用するとなると、空白のセルの扱いを指定することが多いです。よくある使い方としては空白があれば表示結果を空白にする方法。ARRAYFORMULAとIFを使用することで簡単に作成することができます。
数式は以下のようになります。
また、条件付き書式を使って目立たせる方法もありますので、以下の記事も見てみましょう。
まとめと次回予告
ARRAYFORMULAは、Googleスプレッドシートならではの時短テクニックです。
Excelにはない独自の関数で、オートフィルを使用しなくても一括で数式の結果を表すことができます。
特にデータ量が膨大なときに時短となるため、是非活用していきましょう。
次回は、スプレッドシート間でデータをやり取りする便利関数「IMPORTRANGE」の活用方法を解説します。