Si vous avez une fonction VBA qui transforme Microsoft Excel en une bête grignoteuse de processeur, est-il possible de maîtriser les choses afin que vous puissiez continuer à utiliser votre ordinateur pour d’autres activités pendant que Excel termine? Le post de questions et réponses SuperUser d’aujourd’hui vient à la rescousse pour aider un lecteur frustré à reprendre Excel sous contrôle.

La séance de questions et réponses d’aujourd’hui nous est offerte par SuperUser, une subdivision de Stack Exchange, un regroupement communautaire de sites Web de questions et réponses.

Image clipart guerrier extraterrestre gracieuseté de Clker.com .

La question

Le lecteur SuperUser learningAsIGo veut savoir s’il existe un moyen de limiter l’utilisation du processeur de Microsoft Excel lors de l’exécution d’un script VBA sur son ordinateur:

Existe-t-il un moyen de limiter l’utilisation du processeur de Microsoft Excel lorsqu’il est en cours d’exécution? J’ai un script VBA qui calcule une grande quantité de formules de tableaux géants. L’ensemble des calculs prend environ vingt minutes et utilise 100% de mon processeur. Je ne peux pas utiliser mon ordinateur pendant cette période et je préférerais qu’Excel fonctionne en arrière-plan tout en utilisant environ 50% de la capacité de mon processeur afin de pouvoir continuer à faire d’autres choses.

Aucune suggestion? Le système d’exploitation de mon ordinateur est Windows 7 Enterprise 64 bits avec une version d’Excel 32 bits 2007 installée dessus.

Existe-t-il un moyen de limiter l’utilisation du processeur de Microsoft Excel lors de l’exécution des fonctions VBA?

La réponse

Le contributeur SuperUser mtone a la réponse pour nous:

Si une fonction VBA est appelée à partir de plusieurs formules ou si votre script génère ou force le recalcul de plusieurs formules, cela devrait certainement utiliser la fonction de calcul multithread dans Microsoft Excel. Respectivement, cela exécuterait plusieurs instances de votre fonction VBA pour chaque formule ou recalculerait plusieurs cellules simultanément pendant que votre script VBA s’exécute sur un seul thread.

Vous pouvez limiter le nombre de threads utilisés par Excel pour recalculer les formules en allant dans Options et en sélectionnant la section avancée , puis en faisant défiler vers le bas jusqu’à atteindre la sous-section Formules .


Vous avez quelque chose à ajouter à l’explication? Sonnez dans les commentaires. Vous voulez lire plus de réponses d’autres utilisateurs de Stack Exchange avertis en technologie?

Voici quelques sources : Microsoft Support Wikipedia windows

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *