Ivan, autointerrogando a la PC con este código se supone que podrías determinarlo.
strComputer = "computername"
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_ComputerSystem",,48)
For Each objItem in colItems
strModel = objItem.Model
If strModel = "Virtual Machine" Then
debug.print "This is a virtual machine!"
else
debug.print "This is NOT a Virtual Machine"
End if
Next
Saludos desde algún lugar de Lima-Perú