10 agosto 2024

Ejecución script envío correo (MS Excel)

Sirviéndose de VBScript se pueden crear macros para ejecutar scripts de PowerShell mediante el editor de Visual Basic. A modo de ejemplo, este podría ser el código para el módulo correspondiente para PowerShell, siendo \...\ el trayecto de disco y script el nombre del archivo de texto PS1 con los comandos:
PowerShell
Sub RunPowerShellScript()
Dim wsh As Object
Set wsh = VBA.CreateObject("WScript.Shell")
wsh.Run "powershell.exe -ExecutionPolicy Bypass -File C:\...\script.ps1", 1, True
Set wsh = Nothing
End Sub
El argumento -ExecutionPolicy Bypass permite ejecutar el script sin restricciones.
El módulo creado se puede asociar como macro a un botón y situarlo en el lugar que se desee dentro la hoja.