Makro im Pausemodus: CPU-Auslastung trotzdem da, Workaround?
28.06.2024 11:41:43
Frank Dreier
leider hat VBA eine merkwürdige Eigenart:
Egal welche Pause-Funktion ich in einem Makro benutze (z.B. Application.wait Now + Timeserial(0, 0, 2) ):
Die CPU Auslastung bleibt genauso hoch als wenn Excel eine komplexe Calculate Berechnung durchführt - obwohl Excel ja nur wartet.
Habt Ihr hier einen "Trick" wie ich in dieser Warteschleife die CPU-Auslastung auf dem Kern runterfahren kann? Ich meine beim Einlesen einer komplexen .txt Datei ist die CPU-Auslastung auf 0 bis die .txt komplett eingelesen ist. Es gibt also Möglichkeiten im Wartemodus (wie auch immer der aussieht) Excel die CPU Power zu entziehen.
Der Hintergrund der Aktion ist, dass mein Notebook nur 2 Kerne hat. Wird einer komplett ausgelastet und das Notebook muss nun mit einem Kern in einem anderen Programm weiterarbeiten (Excel im .wait Modus) so steht hier nur noch ca. 80% der Rechenpower zur Verfügung da eben der 1. Kern durch Excel "reserviert" ist - mal abgesehen vom unnötigen Stromverbrauch.
Habt Ihr da Ideen wann Excel mal keine CPU Power benutzt (oder sehr wenig) bei welchen Ausführungen wenn ein Makro ausgeführt wird? Ich könnte ja da eine Schleife einbauen und immer wieder diese resourcenschonende Funktion einbauen bis Excel weitermachen soll...
Anzeige