Macro para esperar a que un programa deje de ejecutarse
He adaptado esta macro para cerrar procesos usando VBA, para que una macro espere a que un proceso termine. https://excelsignum.com/2017/04/09/cerrar-un-programa-desde-excel-con-vba/ En el ejemplo, he puesto el word, pero se podría usar para cualquier programa. Sub Espera_Cerrar_Programa() 'Declaramos variables Dim cObj As Object Dim Programa As Object Dim Proceso As Object Inicio: 'Rellenar ProgramaEjecutado NombrePrograma = winword.exe ProgramaEjecutado = 0 'Realizamos una consulta SQL para verificar si el programa está activo, en proceso. Set cObj = GetObject("winmgmts://.") Set Proceso = cObj.ExecQuery("SELECT * FROM " & "Win32_Process WHERE Name = '" & NombrePrograma & "'") 'Con un For recorremos la consulta para ver si el programa esta ejecutado For Each Programa In Proceso On Error Resume Next Application.Wait (Now + TimeValue("00:00:02")) ProgramaEjecutado = 1 On Error GoTo 0 Next ...