John Kelbley provides one, you can leave feedback here or contact
johnkel@microsoft.com:
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\virtualization")
Set vmcollecion = objWMIService.ExecQuery("SELECT * FROM Msvm_ComputerSystem",,48)
' loop through all instances in collection
For each vm in vmcollecion
RequestReturn = vm.RequestStateChange(3)
Next
Tony Soper