本記事では、私が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

2015年にWebマーケティング業界に参入。 前職では広告代理店のリーダーとしてリスティング、ディスプレイ、SNS広告の運用を中心に多様なクライアントのプロモーションを支援。「デジタルマーケティング業界の何でも屋」「一人一人が獅子になる」という考え方に共感し 、2021年に援軍へ入社。 数字と家族を愛する新進気鋭の理系ディレクター。別名「データ分析の鬼」

engun_banner-lion