本記事では、私がARRAYFORMULA関数を使用している際に発生したエラーについてその原因と対処法をお伝えします。

ARRAYFORMULA関数は複数の行に一括で同じ処理を下せるスプレッドシート上の関数です。
詳細はこちらを参照ください。
https://engun.co.jp/arrayformula-%e3%82%92%e5%b8%b8%e7%94%a8%e3%81%97%e3%81%a6%e3%81%84%e3%82%8b%e4%ba%ba%e3%81%8c%e5%a5%bd%e3%81%8d%ef%bc%88%e7%ac%91%ef%bc%89/

エラー発生状況

毎日広告のローデータをスプレッドシートに取得し、そのローデータを加工するため別シートに転記する作業をARRAYFORMULA関数を使って行っています。
ですが、ある日突然「#REF」エラーが発生し転記できなくなってしまいました。
組んでいる式は以下のようなものです。
=ArrayFormula(シートX!A2:A)
(シートXのA列2行目以下を全て取得するという式)

 

原因と対策

エラーが発生した原因は単純で、転記先のシートの行数が足らないというものでした。
転記元のシートXの行数が2000行あるのに対して、転記先のシートYの行数が1000行しかないというような状況です。
そのため、シートYの行数を1000行以上増やして、2000行以上にすればエラーは解消されデータを正しく転記できました。

もしARRAYFORMULA関数を使ってエラーが発生した場合は、データの行数をチェックしてみましょう。

※余談
記事の趣旨とは異なりますが、大量のローデータを扱う場合、単純にデータを蓄積していくだけだと今回のようなエラーも度々発生してしまう上、データの処理も徐々に遅くなっていきます。
データの取得期間は過去3か月までというように期間を決めてしまうか、BigQueryやGoogleデータポータルを駆使してそもそものデータの取得・管理方法を変えてしまう方が良いかもしれません。

The following two tabs change content below.

Kyotaro Yamaoka

横浜国立大学工学部卒。2児の父。重工業系エンジニアを経て、2015年にWebマーケティング業界に参入。電通アイソバーや博報堂DYデジタル、インティメートマージャーなどとの協業経験を経て、ベンチャー企業のリーダー運用者として多様な業種の広告主を支援。2021年に援軍入社。データ分析に強みを持つ理系ディレクター。