a maneira que eu normalmente faço isso é colocar o seguinte código no topo do meu script:
If Not WScript.Arguments.Named.Exists("elevate") Then
CreateObject("Shell.Application").ShellExecute WScript.FullName _
, WScript.ScriptFullName & " /elevate", "", "runas", 1
WScript.Quit
End If
Dessa forma, se eu iniciar o VBS como um não administrador - ele tenta executar, percebo que não sou um administrador e, em seguida, relança - solicitando que eu execute como administrador e vamos embora.
Eu sei que é uma dor, mas é uma solução bastante simples.
Espero que isso ajude