Here's what I've come up with based on the link provided by Rob. Note that the first line of code changes the hibernation setting. In other words, if you want to do a manual hibernation after running the sleep script, you need to run the first line of other script, and vice versa, or go to control panel's power options.
To sleep:
acShellExecute('', 'powercfg', '-h off')
acShellExecute('', 'rundll32', 'Powrprof.dll,SetSuspendState Sleep')
To hibernate:
acShellExecute('', 'powercfg', '-h on')
acShellExecute('', 'rundll32', 'Powrprof.dll,SetSuspendState Sleep')