Partilhar via


Ler ou escrever num intervalo grande com a API JavaScript do Excel

Utilize estes padrões para ler ou escrever intervalos grandes, evitando erros de limite de recursos.

  • Divida grandes intervalos em blocos mais pequenos. Não carregue nem escreva tudo ao mesmo tempo.
  • Carregue apenas o que precisa (por exemplo, em values vez de values,numberFormat,formulas).
  • Utilize getSpecialCells e RangeAreas para trabalhar com células dispersas em vez de um intervalo grande.
  • Se encontrar um erro de limite, repita com um tamanho de bloco mais pequeno.
  • Aplicar formatação depois de os dados serem implementados.

Quando dividir um intervalo grande

Cenário Assinar deve dividir o intervalo Abordagem
Ler milhões de células Erro de tempo limite ou recurso Ler em blocos de linhas ou colunas. Comece com linhas de 5k a 20 mil.
Escrever um conjunto de resultados grande Falha na escrita única values Escreva em blocos de linhas (com a mesma contagem de colunas para cada bloco).
Atualizações dispersas Muitas células distantes Crie uma cadeia de endereço combinada com getRanges e RangeAreas.
Escrever dados e formatação A formatação abranda o Excel Escreva os valores primeiro, formate depois.

Diferir a formatação & cálculos

As operações de formatação e cálculos pesados, como formatos condicionais ou escritas de fórmulas, acrescentam tempo em áreas grandes. Considere:

  • Primeiro, escreva valores não processados (números simples ou texto) e, em seguida, adicione fórmulas ou formatos numa segunda passagem.
  • Utilize setDirty apenas nos âmbitos de recálculo necessários.
  • Limitar formatos condicionais a linhas utilizadas em vez de referências de coluna inteiras (como A2:A5000 em vez de A:A) com getUsedRange.

Próximas etapas

Confira também