Pagina inicial » como » Como você limita o uso da CPU do Microsoft Excel ao executar funções do VBA?

    Como você limita o uso da CPU do Microsoft Excel ao executar funções do VBA?

    Se você tiver uma função do VBA que transforma o Microsoft Excel em uma besta invasora da CPU, é possível controlar as coisas para que você possa continuar a usar o computador para outras atividades enquanto o Excel está terminando? O post de perguntas e respostas do SuperUser de hoje vem em socorro para ajudar um leitor frustrado a recuperar o Excel.

    A sessão de perguntas e respostas de hoje nos é oferecida por cortesia do SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas conduzido pela comunidade..

    Guerreiro estrangeiro clip art cortesia Clker.com.

    A questão

    O leitor de superusuário learningAsIGo quer saber se existe uma maneira de limitar o uso de CPU do Microsoft Excel enquanto executa um script VBA em seu computador:

    Existe uma maneira de limitar o uso da CPU do Microsoft Excel quando ele está sendo executado? Eu tenho um script VBA que calcula uma grande quantidade de fórmulas de matriz gigante. Todo o conjunto de cálculos leva aproximadamente vinte minutos para ser concluído e usa 100% da minha CPU. Não consigo usar meu computador durante esse período e preferiria que o Excel "rodasse em segundo plano", usando cerca de 50% da capacidade da minha CPU, para que eu pudesse continuar fazendo outras coisas..

    Alguma sugestão? O sistema operacional do meu computador é o Windows 7 Enterprise de 64 bits com uma versão de 2007 de 32 bits do Excel instalado nele.

    Existe uma maneira de limitar o uso da CPU do Microsoft Excel durante a execução de funções VBA?

    A resposta

    O contribuidor do SuperUser, mtone, tem a resposta para nós:

    Se uma função VBA é chamada de várias fórmulas ou se seu script gera ou força o recálculo de várias fórmulas, isso definitivamente deve fazer uso do recurso de cálculo multi-threaded no Microsoft Excel. Respectivamente, isso poderia executar várias instâncias de sua função VBA para cada fórmula ou recalcular várias células simultaneamente enquanto seu script VBA estiver sendo executado em um único segmento.

    Você pode limitar o número de threads usados ​​pelo Excel para recalcular as fórmulas indo até Opções e selecionando o Seção Avançada, em seguida, rolando para baixo até chegar ao Fórmulas subseção.


    Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.