Страницы: 1
RSS
Проигрывание exe из VBA, AppActivate
 
Помогите, плиз.

Работает ЧЕРЕЗ раз. То работает, то нет.
Может это просто способ с кнопками "глючный"? Дык вроде нет.
Уже поставил задержку (думал, машина слишком быстро вбивает клавишы). Не помогло.
Расшифровка команд и долгая задержка не помогают понять причину, т.к. окно exe активировано, но НЕ РАЗВЕРНУТО и что там происходит я не вижу. Может кто подскажет аналог команды AppActivate для разворачивания окна, я хоть пойму в чем дело.

П.С. путь к файлу вбивает всегда. До кнопки "завершить" доходит через раз :(
Код
'запускаем exe
p = "C:\Users\XXX\Desktop"
    Call Shell(p & "\XXX.exe")
    Application.Wait (Now + TimeValue("0:00:05"))
        
'активируем окно exe
    AppActivate ("XXX")
'нажимаем TAB, Enter
    SendKeys "{TAB 1}", True
    Debug.Print "tab"
    Application.Wait (Now + TimeValue("0:00:05"))
    
    SendKeys "{Enter 1}", True
    Debug.Print "enter"
    Application.Wait (Now + TimeValue("0:00:05"))
'курсор на окне "обзор" вбиваем в него путь к файлу
    SendKeys p & "\XXX.xlsx", True
    Application.Wait (Now + TimeValue("0:00:05"))
 
'нажимаем TAB, Enter
    SendKeys "{Enter 1}", True
    Debug.Print "enter"
    Application.Wait (Now + TimeValue("0:00:05"))
    
    AppActivate ("XXX")
    Application.Wait (Now + TimeValue("0:00:05"))
    
    SendKeys "{Enter 1}", True
    Debug.Print "enter"
    Application.Wait (Now + TimeValue("0:00:05"))
    
    SendKeys "{TAB 1}", True
    Debug.Print "tab"
    Application.Wait (Now + TimeValue("0:00:05"))
    
    SendKeys "{Enter 1}", True
    Debug.Print "enter"
    Application.Wait (Now + TimeValue("0:00:05"))
 
Цитата
zavhoz1984 написал: для разворачивания окна
Изучите ShellExecute.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Огромное спасибо!
Связь с открытым окном стала стабильной. Вроде сбоев в общении нет (тьфутьфутьфу)
Страницы: 1
Читают тему
Наверх