1

Мои работы включают многократный ввод данных, поэтому я открываю до 10 вкладок в окнах и повторяю ввод информации, одинаковой информации для всех 10 вкладок ... поэтому я использовал регистратор в AHK, чтобы помочь мне ввести данные для каждой вкладки ..... так что мне интересно, смогу ли я выполнить команду нажатием клавиши, которая автоматически заполнит информацию для всех 10 вкладок одновременно ... начиная с информации. все то же самое ... ниже приведен мой основной записанный скрипт для одной вкладки.

^!K::

MouseClick, левый, 229, 142

отправить ZRDP-07-30-WEP.10/15-005

MouseClick, левый, 460, 175

Сон, 100

MouseClick, левый, 319, 248

Сон, 100

MouseClick, левый, 470, 226

Сон, 100

MouseClick, левый, 258, 308

Сон, 100

MouseClick, левый, 468, 250

Сон, 100

MouseClick, левый, 252, 346

Сон, 100

MouseClick, левый, 464, 272

Сон, 100

MouseClick, левый, 252, 366

Сон, 100

MouseClick, левый, 1363, 211

Сон, 100

MouseClick, левый, 1232, 223

Сон, 100

MouseClick, левый, 1194, 275

Сон, 100

MouseClick, левый, 1134, 303

Сон, 100

MouseClick, левый, 1126, 152

Сон, 100

Отправить, DD & KC

вернуть

Ниже я попытался повторить все записанные выше сценарии для запуска или выполнения на следующей вкладке ,,. но безуспешно :(

^!K::

Var1 = ZRDP-07-kew.1/15-764

param =

{

MouseClick, левый, 229, 142

отправить% var1%

MouseClick, левый, 460, 175

Сон, 100

MouseClick, левый, 319, 248

Сон, 100

MouseClick, левый, 470, 226

Сон, 100

MouseClick, левый, 258, 308

Сон, 100

MouseClick, левый, 468, 250

Сон, 100

MouseClick, левый, 252, 346

Сон, 100

MouseClick, левый, 464, 272

Сон, 100

MouseClick, левый, 252, 366

Сон, 100

MouseClick, левый, 1363, 211

Сон, 100

MouseClick, левый, 1232, 223

Сон, 100

MouseClick, левый, 1194, 275

Сон, 100

MouseClick, левый, 1134, 303

Сон, 100

MouseClick, левый, 1126, 152

Сон, 100

Отправить, DD & KC

}

Отправить, {CTRLDOWN} {TAB} {CTRLUP}

MouseClick, левый, 229, 142

действие =

вернуть

Пожалуйста, помогите мне в этом ... Спасибо большое...

Я думаю, что, возможно, нашел часть решения моего собственного вопроса .. ниже мой сценарий ..

F9::

Var1 = ZRDP-07-kew.1/15-123

MouseClick, левый, 229, 142

отправить% var1%

MouseClick, левый, 460, 175

Сон, 100

MouseClick, левый, 319, 248

Сон, 100

MouseClick, левый, 470, 226

Сон, 100

MouseClick, левый, 258, 308

Сон, 100

MouseClick, левый, 468, 250

Сон, 100

MouseClick, левый, 252, 346

Сон, 100

MouseClick, левый, 464, 272

Сон, 100

MouseClick, левый, 252, 366

Сон, 100

MouseClick, левый, 1363, 211

Сон, 100

MouseClick, левый, 1232, 223

Сон, 100

MouseClick, левый, 1194, 275

Сон, 100

MouseClick, левый, 1134, 303

Сон, 100

MouseClick, левый, 1126, 152

Сон, 100

Отправить, DD & KC

Отправить, {CTRLDOWN} {TAB} {CTRLUP}

sendinput, {F9}

вернуть

Однако эта команда будет выполнена без остановки .. поскольку sendinput {F9} будет продолжаться вечно ... Как мне ограничить этот sendinput, скажем, только до 10 вкладок (Windows Browser)... Пожалуйста, совет. Спасибо вам.

1 ответ1

0

Вы НЕ должны использовать макро-комбинацию клавиш (F9) в вашем скрипте. Если это так, он всегда вызывает себя, и ваш сценарий не будет завершен. попробуйте так:

; your macro shortcut key is pressed
F9::
step := 0
; a variable named 'step' is defined and initialized to 0

;here is the start of your action which should be repeated 10 times
start:

;;;;;;;; PUT YOUR CODES HERE

Var1 = ZRDP-07-kew.1/15-123

MouseClick, left, 229, 142

send %var1%

MouseClick, left, 460, 175

Sleep, 100

MouseClick, left, 319, 248

Sleep, 100

MouseClick, left, 470, 226

Sleep, 100

MouseClick, left, 258, 308

Sleep, 100

MouseClick, left, 468, 250

Sleep, 100

MouseClick, left, 252, 346

Sleep, 100

MouseClick, left, 464, 272

Sleep, 100

MouseClick, left, 252, 366

Sleep, 100

MouseClick, left, 1363, 211

Sleep, 100

MouseClick, left, 1232, 223

Sleep, 100

MouseClick, left, 1194, 275

Sleep, 100

MouseClick, left, 1134, 303

Sleep, 100

MouseClick, left, 1126, 152

Sleep, 100

Send, DD & KC

Send, {CTRLDOWN}{TAB}{CTRLUP}

;;;;;;;; END OF YOUR CODES [without 'RETURN']

; adding current step to number of total passed steps
step := step " + 1"

; simply check to see if current step is lower than 10 times or not
If step <= 10
{
    ; if so repeat your codes
    Goto, start
}
return

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .