I would use the built-in Windows functionality called Scheduled Tasks. You
can probably add a scheduled task to the system programmatically using the
Win32 API (though I haven’t looked at the docs), or since you can also add
tasks on the command line using C:\WINDOWS\SYSTEM32\SCHTASKS.EXE (use /? At
the command line for more help, and specifically SCHTASKS /CREATE /? for
help on creating a scheduled task), you can add a task programmatically
using the VBA Shell command to run the desired command line. You can also
use the GUI at Start/Programs/Accessories/System Tools/Scheduled Tasks, or
in the Control Panel.