ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > Excel VBA > 如何用VBA获取CPU使用率?

如何用VBA获取CPU使用率?

作者:绿色风 分类: 时间:2022-08-17 浏览:154
楼主
amulee
Q:如何用VBA获取CPU使用率?
A:参考以下代码
  1. Sub 查询CPU()
  2.     Dim WmiObj  As Object
  3.     For Each WmiObj In GetObject("Winmgmts:").InstancesOf("Win32_Processor")
  4.         MsgBox "当前CPU使用率为:" & WmiObj.loadpercentage & "%"
  5.     Next
  6. End Sub



查询CPU使用率.rar
2楼
清华
3楼
wqfzqgk
Sub test()


Dim sComputerName, WMI_Obj, WMI_ObjProps, ObjClsItem
   sComputerName = Environ("computername")
   If Len(Trim(sComputerName)) = 0 Then sComputerName = "."
   Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
   Set WMI_ObjProps = WMI_Obj.ExecQuery("Select * from Win32_Processor", , 48)

   For Each ObjClsItem In WMI_ObjProps
      MsgBox "AddressWidth: " & ObjClsItem.AddressWidth
      MsgBox "Architecture: " & ObjClsItem.Architecture
      MsgBox "Availability: " & ObjClsItem.Availability
      MsgBox "Caption: " & ObjClsItem.Caption
      MsgBox "ConfigManagerErrorCode: " & ObjClsItem.ConfigManagerErrorCode
      MsgBox "ConfigManagerUserConfig: " & ObjClsItem.ConfigManagerUserConfig
      MsgBox "CpuStatus: " & ObjClsItem.CpuStatus
      MsgBox "CreationClassName: " & ObjClsItem.CreationClassName
      MsgBox "CurrentClockSpeed: " & ObjClsItem.CurrentClockSpeed
      MsgBox "CurrentVoltage: " & ObjClsItem.CurrentVoltage
      MsgBox "DataWidth: " & ObjClsItem.DataWidth
      MsgBox "Description: " & ObjClsItem.Description
      MsgBox "DeviceID: " & ObjClsItem.DeviceID
      MsgBox "ErrorCleared: " & ObjClsItem.ErrorCleared
      MsgBox "ErrorDescription: " & ObjClsItem.ErrorDescription
      MsgBox "ExtClock: " & ObjClsItem.ExtClock
      MsgBox "Family: " & ObjClsItem.Family
      MsgBox "InstallDate: " & ObjClsItem.InstallDate
      MsgBox "L2CacheSize: " & ObjClsItem.L2CacheSize
      MsgBox "L2CacheSpeed: " & ObjClsItem.L2CacheSpeed
      MsgBox "L3CacheSize: " & ObjClsItem.L3CacheSize
      MsgBox "L3CacheSpeed: " & ObjClsItem.L3CacheSpeed
      MsgBox "LastErrorCode: " & ObjClsItem.LastErrorCode
      MsgBox "Level: " & ObjClsItem.Level
      MsgBox "LoadPercentage: " & ObjClsItem.LoadPercentage
      MsgBox "Manufacturer: " & ObjClsItem.Manufacturer
      MsgBox "MaxClockSpeed: " & ObjClsItem.MaxClockSpeed
      MsgBox "Name: " & ObjClsItem.Name
      MsgBox "NumberOfCores: " & ObjClsItem.NumberOfCores
      MsgBox "NumberOfLogicalProcessors: " & ObjClsItem.NumberOfLogicalProcessors
      MsgBox "Othe**milyDescription: " & ObjClsItem.Othe**milyDescription
      MsgBox "PNPDeviceID: " & ObjClsItem.PNPDeviceID
      MsgBox "PowerManagementCapabilities: " & ObjClsItem.PowerManagementCapabilities
      MsgBox "PowerManagementSupported: " & ObjClsItem.PowerManagementSupported
      MsgBox "ProcessorId: " & ObjClsItem.ProcessorId
      MsgBox "ProcessorType: " & ObjClsItem.ProcessorType
      MsgBox "Revision: " & ObjClsItem.Revision
      MsgBox "Role: " & ObjClsItem.Role
      MsgBox "SocketDesignation: " & ObjClsItem.SocketDesignation
      MsgBox "Status: " & ObjClsItem.Status
      MsgBox "StatusInfo: " & ObjClsItem.StatusInfo
      MsgBox "Stepping: " & ObjClsItem.Stepping
      MsgBox "SystemCreationClassName: " & ObjClsItem.SystemCreationClassName
      MsgBox "SystemName: " & ObjClsItem.SystemName
      MsgBox "UniqueId: " & ObjClsItem.UniqueId
      MsgBox "UpgradeMethod: " & ObjClsItem.UpgradeMethod
      MsgBox "Version: " & ObjClsItem.Version
      MsgBox "VoltageCaps: " & ObjClsItem.VoltageCaps
   Exit For
Next

End Sub
4楼
wqfzqgk
wmi有600多个函数,基本都包括了windows中大部分硬件及配置方面的信息。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap