CPU-Auslastung abfragen in Excel
Schritt-für-Schritt-Anleitung
Um die CPU-Auslastung in Excel abzufragen und anzuzeigen, benötigst du einige VBA-Codes. Folge diesen Schritten:
-
VBA-Editor öffnen
- Öffne Excel und drücke
ALT
+ F11
, um den VBA-Editor zu starten.
-
Neues Modul erstellen
- Klicke mit der rechten Maustaste auf "VBAProject (DeinWorkbookName)" > Einfügen > Modul.
-
Code einfügen
- Kopiere den folgenden Code und füge ihn in das Modul ein:
Option Explicit
Private Declare Sub Sleep Lib "Kernel32" (ByVal ms As Long)
Sub CPU_Auslastung()
Dim objWMI As Object, objRefresh As Object, colCPU As Object
Dim i As Long, objCPU As Object
Set objWMI = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & "." & "\root\cimv2")
Set objRefresh = CreateObject("WbemScripting.Swbemrefresher")
Set colCPU = objRefresh.AddEnum(objWMI, "Win32_PerfFormattedData_PerfOS_Processor").objectSet
i = 0
objRefresh.Refresh
Do
For Each objCPU In colCPU
If objCPU.PercentProcessorTime > 0 Then
UserForm1.Label1 = objCPU.PercentProcessorTime & "%"
DoEvents
Else
UserForm1.Label1 = "0%"
DoEvents
End If
Next
Sleep 5000 'nach 5 Sekunden aktualisieren
objRefresh.Refresh
Loop
End Sub
-
UserForm erstellen
- Füge einen UserForm hinzu und platziere ein Label drauf, um die CPU-Auslastung anzuzeigen.
-
UserForm anzeigen
- Verwende den Befehl
UserForm1.Show vbModeless
, um das UserForm nicht modal zu zeigen.
-
Makro ausführen
- Schließe den VBA-Editor und führe das Makro aus, um die CPU-Auslastung anzuzeigen.
Häufige Fehler und Lösungen
-
Fehler: "DLL nicht gefunden"
Stelle sicher, dass die rsrc32.dll
-Datei im System vorhanden ist. Ohne diese kann der Code nicht ausgeführt werden.
-
Fehler: "Objekt nicht gefunden"
Überprüfe, ob die Windows Management Instrumentation (WMI) korrekt installiert ist. Möglicherweise sind Administratorrechte erforderlich.
Alternative Methoden
Eine andere Möglichkeit zur Anzeige der CPU-Auslastung wäre die Verwendung von Excel-Funktionen in Kombination mit externen Tools:
- PowerShell-Skript: Du kannst ein PowerShell-Skript schreiben, das die CPU-Auslastung abfragt und die Ergebnisse in Excel importiert.
- Excel-Datenabfrage: Verwende die Funktionen zur Datenabfrage in Excel, um Systeminformationen von externen Quellen zu importieren.
Praktische Beispiele
Hier ist ein einfaches Beispiel, wie du die CPU-Auslastung in einer UserForm anzeigen kannst:
Private Sub UserForm_Initialize()
Call CPU_Auslastung
End Sub
Füge dies in den Code deines UserForms ein, um die CPU-Auslastung sofort beim Öffnen des Forms anzuzeigen. Stelle sicher, dass das Label für die Anzeige der CPU-Auslastung korrekt benannt ist.
Tipps für Profis
- Automatisierung: Du kannst die CPU-Auslastung regelmäßig abfragen und in eine Excel-Tabelle protokollieren. Dies ist nützlich, um Trends in der Systemauslastung zu analysieren.
- Grafische Darstellung: Verwende Diagramme in Excel, um die CPU-Auslastung über die Zeit zu visualisieren. Dies macht es einfacher, Muster zu erkennen.
- Optimierung: Wenn du viele Prozesse gleichzeitig laufen hast, kann es sinnvoll sein, die CPU-Auslastung zu überwachen, um die Leistung des Systems zu optimieren.
FAQ: Häufige Fragen
1. Wie kann ich die CPU-Auslastung auf mehreren Kernen anzeigen?
Der obige Code zeigt die durchschnittliche CPU-Auslastung an. Du kannst den Code anpassen, um die Auslastung jedes einzelnen Kerns anzuzeigen, indem du die Win32_PerfFormattedData_PerfOS_Processor
-Klasse entsprechend abfragst.
2. Ist dieser Code mit Excel 365 kompatibel?
Ja, der Code sollte in Excel 365 problemlos funktionieren, solange die erforderlichen Bibliotheken und Berechtigungen vorhanden sind.