AHK Новичок здесь.Parse clipboard without Loop [Autohotkey]
У меня есть таблица с данными, которые используются для заполнения форм в приложении в IE.
Возможно, есть лучший способ, но разве можно разобрать буфер обмена без функции Loop?
Я создал этот код, чтобы скопировать выбранный диапазон в Excel и синтаксический анализ в буфер обмена, наклеивая каждое значение вниз колонки:
^`::
Send, ^c ; this copies the column in Excel
WinActivate, ahk_exe iexplore.exe ; activate browser
Sleep 30
Loop, parse, clipboard, `n, `r
{
Send, ^a
SendRaw, %A_LoopField%
Sleep 30
Send, {down}
Sleep 30
}
clipboard =
Return
вопрос является данные не всегда могут быть вставлены через колонку. Иногда картина будет что-то вдоль линий:
Send, ^c ; copy the selected data in Excel
WinActivate, ahk_exe iexplore.exe ; activate browser
Sleep 30
;paste first data item
SendInput, {down}{tab}
;paste second data item
SendInput, +{tab}{down}
;paste third data item
SendInput, {down}
;paste fourth data item
SendInput, {down}
;paste fifth data item
Кроме того, есть ли способ, чтобы активировать окно (таблица Excel), основанное на том, что начинается название с? В принципе, у меня есть несколько отчетов (откуда поступают данные), которые, например, начинаются с XXX, затем имеют идентификационный ссылочный номер (например, XYZ 31259875, XYZ 57896547). Только один из этих отчетов будет открыт одновременно.
Прошу прощения за мое незнание и благодарю вас заранее!
Как бы сценарий знать, когда идти вниз или вбок? Я не думаю, что цикл является вашей проблемой, он выясняет, как определить, как сценарий должен перемещаться по листу. – Sid
@ Сидола Я думал, что у меня может быть несколько сценариев, по одному для каждого шаблона (например, пример выше). – aLearningLady
Предполагая, что вы точно знаете, с какими линиями вы работаете, вы можете использовать [StrSplit()] (http://ahkscript.org/docs/commands/StringSplit.htm) и превратить его в массив, затем получить доступ к массиву на разных линиях. – Sid