In addition to answer provided by Dark Matter I found a command line tool.
You can run the cmds natively in Command Prompt.
Or you can run the cmds as follows in Powershell.
Powershell
PS >
cmd.exe /c "wmic MEMPHYSICAL get MemoryDevices, MaxCapacity"
cmd.exe /c "wmic MEMORYCHIP get BankLabel, DeviceLocator, Capacity, Speed, PartNumber"

Command Prompt
Command: wmic MEMORYCHIP get BankLabel, DeviceLocator, Capacity, Speed, PartNumber
C:>wmic MEMORYCHIP get BankLabel, DeviceLocator, Capacity, Speed,
PartNumber
BankLabel Capacity DeviceLocator PartNumber Speed
ChannelA 8589934592 Bottom-Slot 1(left) M471A1K43BB1-CRC 2133
C:>
I can tell that I have 8 GB in 1 slot... 8589934592 bytes = (8589934592 / 1,073,741,824) = 8 GB
BankLabel column will tell you which slots the RAM chips are installed in. Capacity columns will tell you that how large each module is expressed in bytes. DeviceLocator is another entity to tell which slots the RAM chips are installed in. The PartNumber is the exact part you have installed; You can look up this part number online at your favorite parts store (Amazon.com, Newegg.com, etc), and find more specs there.
Command: wmic memorychip list full -- For full list of memorychip data fields
Lots more commands found here: TechNet Blogs: Useful WMIC Queries
Furthermore, use the following command to display the Number of slots you have on your motherboard and the Capacity for each slot.
Command: wmic MEMPHYSICAL get MemoryDevices, MaxCapacity
C:>wmic memphysical get MemoryDevices, MaxCapacity
MaxCapacity MemoryDevices
33554432 2
C:>
MaxCapacity is in kilobytes, so on my computer it is 32 GB max capacity per slot... 33554432 / 1,048,576= 32. That is 64 GB total max capacity.
Reference: Microsoft Docs: win32-physicalmemoryarray
Credit: How can I detect the amount of memory slots I have?
Credit: Command "wmic memphysical get maxcapacity" gives wrong number
