ARRAYFORMULA関数とは?Googleスプレッドシートで複数セルにまとめて関数を適用する方法

ARRAYFORMULA関数とは?Googleスプレッドシートで複数セルにまとめて関数を適用する方法

皆さんはGoogleスプレッドシートを使用する際にセルに1つずつ関数を入力したり、反映させてたりしませんか?

実はこの作業はブラウザにとても負担をかけていて表示速度や関数の反映スピードの遅延化に繋がっています。

スプレッドシートにはこの問題を回避する「ARRAYFORMULA」という関数が存在するのでご紹介していきます。

ARRAYFORMULA関数とは?

まずなんと読むのか悩む方も多いと思います。「アレイフォーミュラ」と読みます。

「ARRAYFORMULA」とは「ARRAY=配列」と「FORMULA=数式」を組み合わせた造語で、数式を配列形式で表示させることができる関数です。

※ちなみにこの関数は「Googleスプレッドシート」オリジナル関数なので「Excel(エクセル)」では使えません。

ARRAYFORMULA関数のメリット

  • スプレッドシートの表示速度が速くなる
  • ブラウザにかける負担が軽減される
  • 自動入力されるためミスが減る
  • この関数用にショートカットキーが設定されている

ARRAYFORMULA関数の使い方

「数式を配列形式で表示させることができる」と言ってもよく分からないので実際にスプレッドーシートを使って実例をみていきましょう。

ARRAYFORMULA関数

これはある試験における点数の結果と合否です。C列とD列に60点以上が合格「○」で、60点未満は不合格「×」で表示されています。

パッと見何も変わらないように見えますが、ここで数式をそれぞれ表示させてみましょう。

ARRAYFORMULA関数 数式表示

C列には全てのセルに関数が打ち込まれているのに対して、D列はD2にのみ関数が打ち込まれ、それ以降は「○」もしくは「×」しか打ち込まれていません。

もちろん手打ちをしたわけではありません。ARRAYFORMULA関数を用いたことで指定した範囲箇所は全て勝手にコンピュータが判断して打ち込んでくれたのです。

対象セルの範囲に注意

ここでみなさんに気をつけて欲しいのが「IF関数のみの数式」と「ARRAYFORMULA関数を用いたIF関数の数式」でセルの範囲指定が異なっているという点です。

分かりやすくしてみると、

【IF関数のみ】

=IF(単一セル>=60,”○”,”×”)

【ARRAYFORMULA関数を用いたIF関数】

=ARRAYFORMULA(IF(範囲セル>=60,”○”,”×”))

IF関数の単一セルだった部分が範囲セルになっています。

ARRAYFORMULA関数を使うと、IFやTEXT、YEARなどの1つのセルにしか使えない関数に対して、範囲を選択して使うことができるようになります。

逆に、COUNTやCOUNTAなど範囲内の個数を求める関数は使えないので注意してください。

ショートカットキーが便利

メリットのところでも出てきたように、ARRAYFORMULA関数にはGoogleが独自のショートカットキーを設定しています。

セルで関数を入力中に、以下のショートカットキーを試してみてください。

Mac:Command+Shift+Enter

Windows:Ctrl+Shift+Enter

冒頭に「ARRAYFORMULA」が追加されます。あとは通常の関数の対象セルを範囲にすれば配列関数の完成となります。少し慣れれば簡単に使いこなせるようになります。

せっかく効率良くするためにこの関数を用いるのでぜひショートカットキーも活用していきましょう。

ARRAYFORMULA関数のまとめ

いかがだったでしょうか?

少し難しい関数ではありますが、慣れれば簡単に使えるようになります。

特に対象セルの指定を範囲にするところがミソです。

Googleスプレッドシートはデータ量や関数が多くなると重くなったりしますので、こういった配列関数を駆使して快適な集計生活を送りましょう!

QUERY関数とは?Googleスプレッドシートでデータ検索する方法

2019.07.30