次の方法で共有


Excel JavaScript API を使用して広い範囲の読み取りまたは書き込みを行う

これらのパターンを使用して、リソース制限エラーを回避しながら、大きな範囲の読み取りまたは書き込みを行います。

  • 大きな範囲を小さなブロックに分割します。 すべてを一度に読み込んだり書き込んだりしないでください。
  • 必要なものだけを読み込みます (たとえば、values,numberFormat,formulasではなくvalues)。
  • getSpecialCellsRangeAreasを使用して、広い範囲ではなく、散在したセルを操作します。
  • 制限エラーが発生した場合は、ブロック サイズを小さくして再試行してください。
  • データの配置後に書式設定を適用します。

大きな範囲を分割する場合

シナリオ 範囲を分割する必要がある署名 方法
何百万ものセルを読み取る タイムアウトまたはリソース エラー 行ブロックまたは列ブロックで読み取ります。 5,000 行から 20,000 行から始めます。
大きな結果セットを作成する 単一 values 書き込みが失敗する 行ブロックに書き込みます (ブロックごとに同じ列数)。
スパース更新 多数の離れたセル getRangesRangeAreasを使用して、結合されたアドレス文字列を構築します。
データの書き込みと書式設定 書式設定に時間がかかる Excel 最初に値を書き込み、後で書式を設定します。

書式設定 & 計算を延期する

条件付き書式や数式の書き込みなど、書式設定と計算の負荷の高い操作は、大きな領域に時間を追加します。 考慮対象:

  • 最初に生の値 (プレーンな数値またはテキスト) を書き込み、次に 2 番目のパスで数式または形式を追加します。
  • setDirtyは、必要な再計算スコープでのみ使用します。
  • getUsedRangeを使用して、列参照全体 (A:AではなくA2:A5000など) の代わりに使用される行に条件付き書式を制限します。

次の手順

関連項目