Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Активация макроса в Excel

Страниц (1): [1]
 

1. Prosto - 06 Февраля, 2020 - 15:00:48 - перейти к сообщению
Не могу решить вопрос, может запутался.
В свернутом или неактивном Excel необходимо запустить в действие макрос сочетанием клавиш Ctrl + допустим русская буква "д". И после работы макроса получить результат из буфера обмена.
Не получается передать в ексель сочетания клавиш и запустить макрос.
Этот код просто пропечатывает "v" в активной ячейке

CODE:
win wind=window ("Книга1", "EXCEL7", window ("Книга1 - Excel", "XLMAIN", -1));

sendkeydown(17, wind);
sendkeydown(86, wind);
sleep(200)
sendkeyup(86, wind);
sendkeyup(17, wind);
2. Zireael - 06 Февраля, 2020 - 15:25:07 - перейти к сообщению
 Цитата:
sleep(200)

Отсутствует ;
CODE:
win wind=window ("Книга1", "EXCEL7", window ("Книга1 - Excel", "XLMAIN", -1));

keydown(17); // Ctrl
sendkeydown(86, wind); // 'v'
sleep(200);
sendkeyup(86, wind);
keyup(17);
3. Prosto - 06 Февраля, 2020 - 15:25:26 - перейти к сообщению
Точно всё попутал.
Вместо "д", можно "u", тогда код:

CODE:
win wind=window ("Книга1", "EXCEL7", window ("Книга1 - Excel", "XLMAIN", -1));

sendkeydown(17, wind);
sendkeydown(85, wind);
sleep(200)
sendkeyup(85, wind);
sendkeyup(17, wind);


Но результат тот же, пропечатывает "u". Активации не происходит
(Добавление)
 Zireael пишет:
 Цитата:
sleep(200)

Отсутствует ;
CODE:
win wind=window ("Книга1", "EXCEL7", window ("Книга1 - Excel", "XLMAIN", -1));

keydown(17); // Ctrl
sendkeydown(86, wind); // 'v'
sleep(200);
sendkeyup(86, wind);
keyup(17);

Заработало!
Zireael спасибо большое. Выручил

Powered by ExBB FM 1.0 Final