3歳児の父、ポイ活やデリバリーを始める

3歳児の父、ポイ活やデリバリーを始める

最近ポイ活やデリバリーを始めました。
結婚して子供もでき、家も買いました。2歳の男の子。
稼ぐことだったり、まじめなことだったり、日常の小ネタや備忘録を書いていきます。


Amebaでブログを始めよう!

今回は関数のお話です。

importrange関数とは

 

そもそも、importrange関数とは、他のスプレッドシートのデータをリアルタイムで参照できる関数です。

構文としては以下の通りです。

 

=IMPORTRANGE(“スプレッドシートのURL(もしくはID)”,“シート名!範囲”)

となります。

実際には以下の感じで使います。

まず、参照したいスプレッドシートのURLがこうだとします。

https://docs.google.com/spreadsheets/r/fasdh335gkads882w2LBPhcY2j5Xlboi-k/edit#gid=11111111

 

これをこのまま貼ってもいいし、

 

=IMPORTRANGE(“https://docs.google.com/spreadsheets/r/fasdh335gkads882w2LBPhcY2j5Xlboi-k/edit#gid=11111111”,“シート1!A:D”)

 

IDと呼ばれる部分だけ貼ってもOKです。

 

=IMPORTRANGE(“fasdh335gkads882w2LBPhcY2j5Xlboi-k”,“シート1!A:D”)

 

最初の一回だけ、アクセス許可というものが必要で、数式を入力したセルを選択すると、

ポップアップ的なのが出るので、アクセス許可をクリックしてください。

 

すると参照先のデータが表示されたかと思います。

もし許可ができない場合は、下記の原因が考えられます。

・編集権限がない

・参照先の編集権限がない

・スマホで見ている(PCからでしか許可できない仕様です…)

・参照範囲と被るセルに何か値が入っている

 (数式を入力したセルを見るとA31の値を上書きするため~~みたいなポップアップ出るので、それを見て該当のセルの値を削除してください。)

 

 

注意する仕様1…参照できるセル数1000万まで

 参照するセルは1000万セルまでとなっているようです。

 ビックデータは扱えないですね…

 ただ、

  ={(IMPORTRANGE("ID", "シート1!A:D")),(IMPORTRANGE("ID", "シート1!E:G"))}

 というように結合すればいけるみたいです。

 

 

注意する仕様2…600回までしか参照できない

 これは情報なくて大変でした…

 例えば、マスタ管理とかしてるスプレッドシートを、たくさんのスプレッドシートで参照しているとします。

 その場合、600回までしか参照されることができないようです。

 僕の場合、毎日スプレッドシートをコピーしていて、マスタをimportrangeしているのですが、

 2年経たないくらいで参照できなくなった経緯があります…

 Googleに問い合わせた時、上記のように言っていました。

 

 その際はマスタのスプレッドシートを新しくコピーすればIDも変わりますので、

 importrange側の参照IDも変更すれば解決できます。

 

 

 

まあ、なんにせよimportrange関数は便利ですので、活用してみてください!

↓お役に立てれば、下記クリックしていただけると助かります!!
 

 

 

 

 

 

 

今回は関数のお話です。

シートを開くたび、もしくは特定の行や列に飛ぶ度
再読み込みエラーが出る現象

 

なんかシートを開くたびにエラーが発生しました、再読み込みしてください。

的な表示が出てくること、ありませんか?

僕はシートの下部までスクロールしている途中にいつも同じところでエラーが表示され、なんだろう?と多少いらいらしておりました。

 

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)

 

お試しください!