Google スプレッドシートには、スプレッドシートの最適化に役立つ以下のような IMPORT 関数があります。
使用量の制限
IMPORT 関数によって作成されるトラフィックが多すぎると、「エラー: リクエスト数が多いためデータの読み込みに時間がかかる可能性があります。スプレッドシート内で作成した IMPORTHTML、IMPORTDATA、IMPORTFEED、IMPORTXML 関数の量を減らしてみてください」というエラー メッセージが表示されます。
ドキュメントの作成者には厳格な制限が適用されます。ユーザーは自分が作成し、開いているすべてのドキュメントの使用量を考慮する必要があります。共同編集者が編集した場合、作成者の保存容量にもカウントされることがあります。
エラー メッセージを解決するには、IMPORT 関数で読み込むソース範囲の変更量を減らします。たとえば、=IMPORTDATA(<ソース範囲>) のソース範囲で指定したデータが頻繁に変更される場合は、外部呼び出しを行う必要があります(外部呼び出しによってスロットルが発生する可能性があります)。
データの更新頻度
使用量が適切に維持されている間はユーザーが最新のデータを取得できるようにするために、IMPORTDATA、IMPORTHTML、IMPORTXML では複数のルールを共有しています。
- ユーザーがドキュメントを開いている間、この 3 つの関数は 1 時間ごとに自動的に更新を確認します。数式とシートが変更されていない場合でも、確認します。
- ユーザーがセルを削除してもう一度追加した場合や、同じ数式でセルを上書きした場合、これらの関数は更新をトリガーします。
重要: ユーザーがドキュメントを開いて更新した場合は、どの関数も更新をトリガーしません。
揮発性
IMPORT 関数を使用すると、セル内に「#ERROR!」および「エラー: この関数は、NOW()、RAND()、RANDARRAY()、RANDBETWEEN() を含むセルは参照できません」というメッセージが表示されます。
ユーザーのスプレッドシートの過負荷を防ぐために、IMPORT 関数では NOW、RAND、RANDBETWEEN などの揮発性関数を直接的または間接的に参照することはできません。揮発性関数が頻繁に更新されるためです。
前述のエラー メッセージが表示されていても揮発性関数の結果を読み取りたい場合は、揮発性関数の結果をコピーします。[特殊貼り付け] [値のみ貼り付け] を使用します。
重要: この操作を行うと、すべての値が固定値になります。たとえば、NOW の結果を値としてコピーして [特殊貼り付け] を選択した場合、貼り付ける値が時間によって変化することはありません。
ヒント: TODAY 関数は揮発性関数ですが、唯一の例外となり、1 日 1 回以上は更新されません。
エラー メッセージ: 「結果が大きすぎます」
IMPORTXML で、このエラー メッセージが表示される場合は、XPATH クエリで返されるデータの量を減らします。
エラー メッセージ:「...からのインポートを管理者が許可していません」
このエラー メッセージが表示された場合は、この URL からのインポートを許可するよう管理者に依頼してください。
ユーザー通知
以下の関数のスプレッドシートに IMPORT 関数を初めて追加または編集する場合、スプレッドシートで外部関係者とデータを送受信できるようになるため、警告バナーが表示されます。
- IMPORTHTML
- IMPORTXML
- IMPORTFEED
- IMPORTDATA
- IMAGE
アクセスを許可するには、スプレッドシートの編集者が [アクセスを許可] をクリックします。
エラー メッセージ: 「外部 URL からデータを取得するためのアクセスを許可するには、パソコンのウェブブラウザを使用してください」
このエラーが発生した場合は、パソコンのウェブブラウザに切り替えて IMPORT 関数へのアクセスを許可するか、次の手順を踏んでください。
- スプレッドシートの URL を Chrome ブラウザに貼り付けます。
- 次のいずれかを選択します。
- iPhone、iPad の場合: その他アイコン [モバイルサイトをリクエスト] をタップします。
- Android の場合: その他アイコン [PC 版サイト] をタップします。
- [アクセスを許可] をクリックします。
通知の動作:
- この通知はスプレッドシートごとに 1 回表示されますが、操作できるのは編集者のみです。編集者が操作を行うと、通知は閉じられ、他の共同編集者には表示されません。
- [アクセスを許可] をクリックするまで、そのシートの既存の IMPORT 関数はすべてブロックされます。
- アクセスを承認すると、変更履歴を使用してる場合を除き、アクセスを取り消すことはできません。[変更履歴] で、通知が表示される前のバージョンに戻してから、IMPORT 関数を再度追加または編集します。通知が再表示されます。その後、スプレッドシート内の
IMPORTHTML()、IMPORTXML()、IMPORTFEED()、IMPORTDATA()、
IMAGE()
関数をすべて削除できます。