Hi Marc,
you are correct about the MemoryMB property.Only in your case you should use $vm_single.MemoryMB. However the Set-VMResourceConfiguration -MemReservationMB parameter is obsolete. Use MemReservationGB instead:
foreach ($vmin (Get-VM)) { Get-VMResourceConfiguration | Set-VMResourceConfiguration-MemReservationGB$vm.MemoryGB }