Desempenho do Excel: Melhorias de desempenho e limite

Aplica-se a: Excel | Excel M365 | Excel 2016 | Excel 2013 | Excel 2010 | Office 2016 | SharePoint Server 2010 | CORRESPONDENTE

O Excel M365 introduz novos recursos que você pode usar para melhorar o desempenho ao trabalhar com pastas de trabalho grandes ou complexas do Excel

Melhorias nas funções: SUMIFS, AVERAGEIFS, COUNTIFS, MAXIFS, MINIFS

No canal mensal do Office 365 versão 2005 e posterior, SUMIFS, AVERAGEIFS, COUNTIFS, MAXIFS e MINIFS do Excel, bem como suas contrapartes singulares SUMIF, AVERAGEIF e COUNTIF são muito mais rápidos do que o Excel 2010 agregando dados de string na planilha. Essas funções agora criam um índice interno em cache para o intervalo pesquisado em cada expressão. Este índice de armazenado em cache é reutilizado em quaisquer agregações subsequentes que estejam sendo puxadas do mesmo intervalo.

O efeito é dramático: por exemplo, calcular 1200 SUMIFS, AVERAGEIFS e fórmulas COUNTIFS agregando dados de 1 milhão de células em uma CPU de 2 GHz e 4 núcleos que levou 20 segundos para calcular usando o Excel 2010, agora leva apenas 8 segundos, no Excel M365 2006.

Função RealTimeData (RTD)

No canal mensal do Excel M365 versão 2002 ou posterior, a função RealTimeData (RTD) do Excel é muito mais rápida do que o Excel 2010 calculando dados na planilha. Removemos gargalos na sua memória e estruturas de dados subjacentes, bem como o tornamos thread-safe para permitir o seu cálculo em todas as threads disponíveis de recálculo Multi-Threaded (MTR).

Por exemplo, simulando 125.000 atualizações de RTD para tópicos de estoque como "Último preço", "Peça", "Lance" para calcular valores como "Volume comercial", "Valor de mercado", "Ganho/Perda" etc. em 500.0000 células no total, levaram 47 segundos no Excel 2010 e apenas 7 segundos no Excel M365 Versão 2002, no mesmo hardware.

Outro efeito positivo de tornar o thread da função RTD seguro é que o Recálculo Multithread (MTR) não precisa ser pausado para executar mais a função RTD. Isso melhora notavelmente o desempenho ao executar o RTD junto com muitos outros cálculos.

Por exemplo, executamos uma pasta de trabalho com 10.000 funções RTD e 10.000 VLOOKUP, com cada VLOOKUP dependendo do resultado da função RTD. Sem a recalcução completa do RTD com segurança de thread levou 10,20 segundos e com o RTD seguro para thread levou 5,84 segundos.

Melhorias no VLOOKUP, HLOOKUP, MATCH

No Office 365 versão 1809 e versões posteriores, o PROCV, PROCH, CORRESP e MATCH para correspondência exata de dados não classificados do Excel estão mais rápidos do que nunca ao pesquisar em múltiplas colunas (ou linhas com PROCH) do mesmo intervalo da tabela.

Agora, essas funções de pesquisa criam um índice interno em cache para o intervalo da coluna que está sendo pesquisado. Este índice em cache é reutilizado em quaisquer pesquisas subsequentes que são da mesma linha (VLOOKUP e MATCH) ou coluna (HLOOKUP). O efeito é surpreendente: pesquisas em 5 colunas diferentes no mesmo intervalo da tabela podem ser 4 vezes mais rápidas do que a mesmas pesquisas usando o Excel 2016 ou o Excel 2010 e o aprimoramento melhora á medida que mais colunas são pesquisadas.

Por exemplo, calcular 100 linhas das fórmulas 5 VLOOKUP levou 37 segundos usando o Excel 2010 e 12 segundos usando o Excel 2016.

    =VLOOKUP($A900000,$A$2:$E$1000000,1,FALSE)
    =VLOOKUP($A900000,$A$2:$E$1000000,2,FALSE)
    =VLOOKUP($A900000,$A$2:$E$1000000,3,FALSE)
    =VLOOKUP($A900000,$A$2:$E$1000000,4,FALSE)
    =VLOOKUP($A900000,$A$2:$E$1000000,5,FALSE)

Melhoria de memória LAA do Excel de 32 bits

Embora a versão de 64 bits do Excel tenha limites de memória virtual grande, a versão de 32 bits tem apenas 2 GB de memória virtual. Alguns clientes usam a versão de 32 bits porque alguns suplementos de terceiros e controles não estão disponíveis na versão de 64 bits.

As versões de 32 bits do Excel 2013 e do Excel 2016 agora tem o Large Address Aware (LAA) habilitado. Isso minimiza mensagens de erro de falta de memória.

O LAA dobra a memória virtual disponível de 2 GB para 4 GB nas versões de 64 bits do Windows e aumenta a memória virtual disponível de 2 GB para 3 GB nas versões de 32 bits do Windows.

Para saber mais, veja Mudança na Capacidade Large Address Aware no Excel.

Para baixar uma ferramenta que mostra a quantidade de memória virtual que está disponível e quanto está sendo usado, veja a Ferramenta de Verificação de Memória do Excel.

Referências de coluna inteira

Em versões anteriores do Excel, as pastas de trabalho que usam um grande número de referencias de colunas inteiras e várias planilhas (por exemplo =COUNTIF(Sheet2!A:A,Sheet3!A1)) podem usar uma grande quantidades de memória e CPU quando abertas ou quando linhas forem excluídas.

Excel 2016 Build 16.0.8212.1000 reduz a memória e CPU usados nessas circunstâncias.

Em um teste com uma pasta de trabalho com 6 milhões de fórmulas, usar referências de coluna inteira falhou e gerou uma mensagem de falta de memória em 4 GB de memória virtual LAA no Excel 2013 e no Excel 2010, mas o Excel 2016 usou apenas 2 GB de memória virtual .

Referências estruturadas

No Excel 2013 e versões anteriores, a edição de tabelas em que as fórmulas da pasta de trabalho usam referências estruturadas para a tabela foi lenta. Isso levou a percepção de que tabelas não devem ser usadas com um grande número de linhas. Esse problema não ocorre no Excel 2016.

Por exemplo, uma operação de edição que levava 1.9 segundos no Excel 2013 e no Excel 2010 levava cerca de 2 milissegundos no Excel 2016.

Filtrar, classificar e copiar/colar

Fizemos diversas melhorias em relação ao tempo de resposta ao filtrar, classificar e copiar/colar em pastas de trabalho grandes.

No Excel 2013, após filtrar, classificar ou copiar/colar várias linhas, o Excel pode responder de forma lenta ou travar. O desempenho variou conforme o número de todas as linhas entre a linha superior visível e a última linha visível. Essas operações estão bem mais rápidas após melhoramos o cálculo interno de posições de interface de usuário vertical no Build 16.0.8431.2058.

Abrir uma pasta de trabalho com várias linhas ocultas ou filtradas, células mescladas ou estruturas podem causar sobrecarga da CPU. Apresentamos a correção dessa área no Build 16.0.8229.1000.

Depois de colar uma coluna de células de uma tabela com linhas filtradas onde o filtro resultando em um grande número de blocos separados de linhas copiada, o tempo de resposta foi muito lento. Isso foi aprimorado no Build 16.0.8327.1000.

Um teste de exemplo em copiar/colar 22.000 linhas filtradas pelas 44,000 linhas mostraram uma melhora significativa:

  • Em uma tabela, o tempo passou de 39 segundos no Excel 2013 e os 18 segundos no Excel 2010 para 2 segundos no Excel 2016.
  • Para um intervalo, o tempo passou de 30 segundos no Excel 2013 e 13 segundos no Excel 2010 para instantâneo no Excel 2016.

Copiar formatos condicionais

No Excel 2013, copiar/colar células pode contendo formatos condicionais podem estar lentos. Isso melhorou significativamente no Excel 2016 Build 16.0.8229.0.

Um teste de exemplo sobre como copiar 44,000 células com um total de regras de formatação condicional 386,000 mostrou uma melhoria significativa:

  • Excel 2010: 70 segundos
  • Excel 2013: 68 segundos
  • Excel 2016: 7 segundos

Adicionar e excluir planilhas

Quando adicionar e excluir um grande número de planilhas, um teste de exemplo no Excel 2016 Build 16.0.8431.2058 mostra uma melhoria de 15 a 20% em velocidade, em comparação ao Excel 2013, mas 5 a 10% mais devagar do que o Excel 2010.

Novas funções

Excel 2016 Build 16.0.7920.1000 apresenta várias funções de planilha úteis:

  • MÁXIMOSES e MÍNIMOSES estender as CONTSES/SOMASES família de funções. Essas funções têm características de bom desempenho. Use-as para substituir as fórmulas de matriz equivalente.
  • TEXTJOIN e CONCAT permitem combinar facilmente cadeias de caracteres de texto de intervalos de células. Usá-las para substituir UDFs equivalente do VBA.

Outras atualizações para o Excel 2016 para Windows

Para saber mais sobre os aperfeiçoamentos de mês a mês para o Excel 2016, confira quais são as novidades no Excel 2016 para Windows.

Melhorias de desempenho do Excel 2010

Com base nos comentários dos usuários sobre o Excel 2007, o Excel 2010 apresenta melhorias para várias recursos.

Recurso Melhoria
Impressora e modo de exibição de layout de página
Para melhorar o desempenho das interações do usuário básico na exibição de layout de página, como inserir dados, trabalhar com fórmulas ou as margens de configuração, o Excel 2010 caches configurações da impressora e apresenta renderização otimizada cálculos. Cache configurações da impressora reduz o número de chamadas de rede e reduz a dependência em uma impressora lenta ou não responde. Além disso, a conexão com a impressora é cancelada para que o usuário não precise esperar por uma impressora lenta ou que não responde.
Gráficos
A partir do Excel 2010, a velocidade do processamento de gráficos aumentou, especialmente com grandes conjuntos de dados e desempenho de processamento de texto aumentou. Além disso, o Excel 2010 caches de uma imagem de um gráfico e usa a versão armazenada em cache sempre que possível para evitar cálculos desnecessários e processamento.
Soluções VBA
Aprimoramentos para o modelo do objeto e a forma que interage com aumentos do Excel, a velocidade de desempenho de muitas soluções de VBA são executadas no Excel 2010 comparado com o Excel 2007.

Grandes conjuntos de dados e a versão de 64 bits do Excel

A versão de 64 bits do Excel 2010 não está restrita a 2 GB de RAM como os aplicativos de versão de 32 bits nem até 4 GB de RAM, como os aplicativos de versão de 32 bits do Large Address Aware. Portanto, a versão de 64 bits do Excel 2010 permite que os usuários criem pastas de trabalho muito maiores. A versão de 64 bits do Windows permite maior capacidade de memória endereçável e o Excel é projetado para aproveitar esse capacidade. Por exemplo, os usuários conseguem preencher mais grade com dados que foi possível nas versões anteriores do Excel. Como mais RAM é adicionado ao computador, o Excel usa esse memória adicional, permite pastas de trabalho cada vez maiores e escalas com a quantidade de memória RAM disponível.

Além disso, como a versão de 64 bits do Excel permite maiores conjuntos de dados, as versões de 32 bits e 64 bits do Excel 2010 apresentam melhorias para tarefas comuns do conjunto de dados grande, como inserir e preencher dados, classificação, filtragem e copiar e colar dados. Uso da memória também é otimizado para ser mais eficiente em ambas as versões de 32 bits e 64 bits do Excel.

Confira mais informações sobre a versão de 64 bits do Office 2010 compatibilidade entre 32 e 64 bits versões do Office 2010 e escolha entre 64 e 32 bits, confira escolher entre 64 bits ou 32 bits versão do Office.

Formas

Excel 2010 apresenta aprimoramentos significativos no desempenho de elementos gráficos no Excel. Em um nível alto, essas melhorias contidos em duas áreas: escalabilidade e o processamento.

Os aperfeiçoamentos escalabilidade tem um grande impacto em cenários do Excel devido à grande número de elementos gráficos contidos em planilhas. Geralmente, esse número grande de formas é criado acidentalmente copiando e colando dados de um site ou normalmente executar automação que cria formas, mas não os remove. Esse grande número de gráficos, combinados com a maneira que os gráficos se relacionam à grade de dados no Excel, apresenta vários desafios de desempenho exclusivo. Melhorias no Excel 2010 aumentam a velocidade de desempenho para planilhas que contêm muitas formas.

Além disso, a partir do Excel 2010, suporte para a aceleração de hardware melhora o processamento. Excel 2010 também apresenta melhorias de desempenho para o selecione método do objeto forma no modelo de objeto do VBA.

Recurso Melhoria
Uso básico
O primeiro conjunto de aprimoramentos feitos no Excel 2010 envolve cenários de uso básico. Esses cenários incluem recursos como a classificação, filtragem, inserir ou redimensionar linhas ou colunas ou mesclar células e operações. Quando ocorrem essas operações, pode ser necessário atualizar a posição de um objeto na grade do gráfico. No pior cenário, é necessário fazer uma atualização de cada objeto único na planilha. No Excel 2010, o desempenho das seguintes situações básicas melhora mesmo quando há milhares de objetos na planilha. Essas melhorias não foram fazer com um único recurso ou uma correção, mas por meio de um destaque dedicado no desempenho incluído a melhoraria do mecanismo de pesquisa de forma, arquivos de estresse de teste e investigar as obstruções.
Links de texto
Um link de texto em uma forma é criado quando o usuário especifica uma fórmula de exemplo "= A1", que define o texto de uma determinada forma. Essas formas específicas foram sujeitas por causar problemas de desempenho em planilhas com um grande número de objetos e/ou quando as alterações feitas de conteúdo da célula. A partir do Excel 2010, como Excel controla e atualiza essas formas melhorou para otimizar o desempenho para alterar o conteúdo da célula. Este trabalho melhora cenários como digitar um novo valor em uma célula ou executar operações de modelo de objeto complexos.
Grade grande
A partir do Excel 2007, o tamanho da grade expandida de 65.000 linhas para mais de um milhão linhas. Este aumento causou alguns problemas de renderização e desempenho ao trabalhar com objetos gráficos nas novas regiões da grade maior. A partir do Excel 2010, o Excel otimiza funcionalidade que depende do uso da parte superior esquerda da grade como a origem para melhorar a experiência de trabalhar com gráficos nas novas regiões da grade. O desempenho e a fidelidade da renderização são aperfeiçoados em relação ao Excel 2007.
Renderização: A aceleração de Hardware
A partir do Excel 2010, foram feitos aperfeiçoamentos na plataforma de gráficos adicionando suporte a aceleração de hardware ao renderizar objetos 3D. Enquanto GPU pode tornar esses objetos com mais rapidez do que a CPU, a experiência no Excel 2010 depende de conteúdo em sua planilha. Se você tiver uma planilha cheia de formas 3D, verá mais benefícios com as melhorias de aceleração de hardware do que em uma planilha com apenas formas 2D (que não aproveitam a GPU).

Melhorias de cálculo

A partir do Excel 2007, vários threads de cálculo melhorou o desempenho do cálculo.

A partir do Excel 2010, melhorias de desempenho adicionais feitas para aumentar ainda mais a velocidade de cálculo. Excel 2010 pode ligar as funções de forma assíncrona definidas pelo usuário. Chamando funções de forma assíncrona melhora o desempenho, permitindo vários cálculos ao mesmo tempo. Quando executar funções definidas pelo usuário em um cluster de cálculo, chamando funções de forma assíncrona permite que vários computadores sejam usados para concluir os cálculos. Para saber mais, confira Funções assíncronas definidas pelo usuário .

Processadores de vários núcleos

Excel 2010 fez investimentos adicionais para aproveitar o máximo de vários núcleos processadores e melhorar o desempenho de suas tarefas de rotina. A partir do Excel 2010, os seguintes recursos usam processadores de vários núcleos: salvando um arquivo, abrindo um arquivo, atualizando uma Tabela Dinâmica (para fontes de dados externas, exceto OLAP e SharePoint), classificando uma tabela de células, classificando uma Tabela Dinâmica e dimensionando automaticamente uma coluna.

Operações que envolvem a leitura e carregam ou escrevem dados, como abrir um arquivo, salvar um arquivo ou atualizar dados dividindo a operação em dois processos aumenta a velocidade de desempenho. O primeiro processo obtém os dados e o segundo processo carrega os dados em estrutura apropriada na memória ou grava os dados em um arquivo. Dessa forma, assim que o primeiro processo começa a ler uma parte de dados, o segundo processo pode começar imediatamente a carregar ou escrever dados, embora o primeiro processo continue a ler a próxima parte dos dados. Anteriormente, o primeiro processo tinha que terminar de ler todos os dados em uma determinada seção antes do segundo processo poder carregar nessa seção dos dados na memória ou gravar os dados para um arquivo.

PowerPivot

PowerPivot se refere a uma coleção de aplicativos e serviços que oferecem uma abordagem de ponta a ponta para criar soluções orientadas a dados, gerenciamento de usuário de business intelligence em pastas de trabalho do Excel. PowerPivot para Excel é uma ferramenta de análise de dados que oferece não coincidente poder computacional diretamente no Excel. Aproveitar os recursos conhecidos do Excel, os usuários podem transformar grandes quantidades de dados de qualquer fonte com velocidade incrível em informações significativas para obter as respostas que precisam em segundos.

PowerPivot também pode ser integrado ao SharePoint. Em um farm do SharePoint, o PowerPivot do SharePoint é o conjunto de aplicativos de servidor, serviços e recursos compatíveis com a colaboração em equipe nos dados do business intelligence. O SharePoint oferece a plataforma de colaboração e compartilhamento de inteligência de negócios em toda a equipe e organização de grande porte. Autores de pasta de trabalho e proprietários publicam e gerenciam a inteligência de negócios que transformam seus sites do SharePoint.

Para obter mais informações sobre o PowerPivot, consulte Visão geral do PowerPivot.

Serviços HPC do Excel 2010

Com uma grande variedade de funções de análise estatística, suporte para construir análises complexas e extensibilidade ampla, o Excel 2010 é a ferramenta preferida para análise de dados corporativos. Quando os modelos tornam maiores e pastas de trabalho ficam mais complexas, o valor das informações geradas aumenta. No entanto, as pastas de trabalho mais complexas também exigem mais tempo para calcular. Para análises complexas, é comum para os usuários passar horas, dias, ou até mesmo semanas para concluir essas pastas de trabalho complexas.

Uma solução é usar o HPC Server 2008 do Windows para dimensionar os cálculos do Excel em vários nós em um cluster de computação de alto desempenho (HPC) do Windows em paralelo. Há três métodos para executar cálculos Excel 2010 em um grupo com base no Windows HPC Server 2008: executando pastas de trabalho do Excel em um grupo, executar funções do Excel definidas pelo usuário (UDFs) em um grupo e usando o Excel como uma grupo de arquitetura orientado (SOA) cliente.

Confira mais informações sobre os serviços do Excel 2010 HPC,, confira acelerar o Excel 2010 com HPC de Windows Server 2008 R2.

Conclusão

Excel 2016 apresenta melhorias de desempenho e limitação voltadas para aumentar a capacidade do Excel para lidar com eficiência com pastas de trabalho grandes e complexas. Essas melhorias permitem ao Excel dimensionar além de hardware, melhorar o desempenho como a CPU e expandir a capacidade RAM de computadores.

Confira também

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.