
目次
ArrayFormulaってなに?
ArrayFormulaは「複数のセルに対して、一括で処理を行える」スプレッドシートの非常に強力な関数です。
通常の関数では1セルずつ関数をコピーして使いますが、ArrayFormulaを使えば複数行にまたがる処理を一気に適用できます。
=ArrayFormula(A2:A * 2)
このように書くだけで、A2以降の値すべてに2倍の計算が一括で適用されます。
そのため
- 最終行がどこになるかわからない場合
- これから行方向に入力していく
場合、毎回数式をコピーするもしくは入力されるであろう箇所まであらかじめ数式をコピーしておく必要がありません。
ArrayFormulaの基本形
単純な数値処理を一括で行う
=ArrayFormula(A2:A + B2:B)
→ A列とB列の対応するセルを足し算し、結果を一括で表示します。
IF関数との組み合わせで条件分岐も可能
=ArrayFormula(IF(A2:A > 100, "合格", "不合格"))
→ A列の値が100より大きければ「合格」、そうでなければ「不合格」を表示します。
ArrayFormulaの入力ショートカット
実は、ArrayFormulaは毎回手打ちしなくても、例えば上記の数式だと
IF(A2:A > 100, "合格", "不合格")
まで入力した状態で
- Windows:Ctrl + Shift + Enter
- Mac:Command + Shift + Enter
で簡単に適用が可能です!
実用テクニック:配列と他関数を組み合わせる
SPLIT・FLATTENと組み合わせて文字列を分解
=ArrayFormula(SPLIT(FLATTEN(SPLIT(A2:A4, ",")), ","))
→ 複数行・カンマ区切りの文字列をすべて分解して1列にまとめられます。
リストデータの整形に便利です。
FLATTEN関数についてはこちらの記事をご覧ください。
TEXT・DATE関数と併用して日付を一括フォーマット
=ArrayFormula(TEXT(A2:A, "yyyy/mm/dd"))
→ A列の日付をすべて「yyyy/mm/dd」形式に変換して表示。
注意点とトラブル対策
例えば
- 行数が多すぎるとパフォーマンスが低下
- 数式が「配列出力」になるため、途中にデータを入れると上書きされる
- 絶対参照($)の扱いに注意(列や行のズレに注意)
まとめ|ArrayFormulaを使えば手間を減らしてミスも防げる
まとめ
- 配列のように一括処理できる
- IFやTEXTなどの他関数との相性も抜群
- 複雑な処理もシンプルに記述可能
→ 一度覚えておけば、毎日の業務や作業を強力にサポートしてくれる関数です。
この記事を書いた人

今村 壱生(IMAMURA Issei)詳細はこちら
29歳のエンジニア兼マーケター。Re PROViSTAとして、生成AI、Webアプリ開発、業務自動化、BI導入、Web広告運用など、幅広い分野で活動中。システム構築では、要件定義から設計・実装・運用まで一貫して対応。また、小説執筆も手がけるなど、クリエイティブな一面も持つ。