今回は関数のお話です。
シートを開くたび、もしくは特定の行や列に飛ぶ度
再読み込みエラーが出る現象
なんかシートを開くたびにエラーが発生しました、再読み込みしてください。
的な表示が出てくること、ありませんか?
僕はシートの下部までスクロールしている途中にいつも同じところでエラーが表示され、なんだろう?と多少いらいらしておりました。
arrayformula関数を使っているのが原因かと思いましたが、
調べても情報が少ないので、困っていました。
それで、多分これだろうというものがありましたので、メモしておきます。
現状
・スプレッドシート1
様々なデータがあります。
・スプレッドシート2
→シート1に
=query(importrange("アドレス","別シート1!A:AH"),"select * where A = 1",0)
→シート2に
=arrayformula('シート1'!B:C)
となっていました。
この時、シート2のある行を見ようとスクロールする度に再読み込みエラーが出ていました。
原因
スプレッドシート1のとある文字列が多分、
Tab␣␣␣改行
りんご
となっており、りんごの前にtabと空白、改行がありました。
スプレッドシート2のこの文字列を表示しようとすると再読み込みエラーが表示されていたのです。
そこで元データであるスプレッドシート1の、りんごの前のtab、空白、改行を削除すると
再読み込みエラーが解消されました。
多分、arrayformulaは配列関数なので、tabがダメだったのかなーと思っております。
もし同じようなエラーが発生する場合は、参照元のデータにtabや空白がないか確認してみてください。
arrayformulaは便利な関数
でも、稀に起こる現象かと思います。
arrayformulaはとても便利な関数です。
セル1つ1つに関数を入れるより、圧倒的に軽く、早いです。
慣れれば簡単なので、ぜひ使いこなしてください!
使い方
=arrayformula(数式)
これだけです!
数式内のセルなんかを範囲で指定できます。
簡単な例を1つだけ。
C1セルに以下のように入力すると、C1~C10まで足し算の結果が出ます。
=arrayformula(A1:A10+B1:B10)
お試しください!