今回は、ExcelVBAでパソコン(Windows10,11)のメモリサイズを取得する方法について解説します。
Excel VBA でパソコンのメモリサイズを取得するには、WMI (Windows Management Instrumentation) を利用するのが一般的です。WMI は、VBA からも利用できます。
Alt+F11キーを押してVBE(Visual Basic Editor)を起動し、下記のコードを記入します。
Sub GetPhysicalMemory()
Dim objWMIService As Object
Dim colItems As Object
Dim objItem As Object
Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_PhysicalMemory")
For Each objItem In colItems
MsgBox "物理メモリ: " & Format(objItem.Capacity / 1024 / 1024 / 1024, "0.00") & " GB"
Next
Set colItems = Nothing
Set objWMIService = Nothing
End Sub
マクロを実行した結果です。
コードを解説します。
GetObject(“winmgmts:\\.\root\cimv2”) で WMI サービスに接続します。
ExecQuery(“Select * from Win32_PhysicalMemory”) で物理メモリに関する情報を取得します。
For Each ループで各メモリデバイスの容量を取得し、メガバイト単位で表示します。
今回は、ExcelVBAを使ってパソコンのメモリサイズを取得する方法についてでした。