Автокликер Clickermann :: Форум
Основной раздел => Использование => Topic started by: Greeder on May 18, 2015, 07:20:11 PM
-
Здравствуйте. При помощи кликкермена заношу информацию из экселя на сайт обычной копипастой. Сайт представляет из себя дерево куда заносится информация по различной документации. Не могу решить задачу, как при определенном содержимом ячейки, выполнять разные действия. Как пример, в ячейках указан пол М и Ж, и на сайте требуется выбрать разные строчки. Т.е если М то выбираем Мужской, если Ж то выбираем Женский. А также есть одинаковый документ, но с тремя разными датами, на сайте дату вставить не получается, требуется ввод с клавиатуры. Так вот, если в ячейке, скажем дата 12.03.2015 то нажимаются клавиши 1,2,0,3. А если 04.04.2015 то клавиши 0,4,0,4. Пожалуйста, помогите разобраться
-
Для начала нужно экспортировать таблицу в TXT файл с разделителями ячеек по TAB
Вот набросок скрипта
INC($num,1) // наращиваем номер строки
IF($num > TFCOUNT("input.txt"))
HALT // останавливаемся если строки в файле кончились
END_IF
$str = TFREAD("input.txt", $num) // в цикле, читаем строки из файла
STRSEPARATE($str, " ", $arr) // разбираем строку в массив по разделителям TAB
FOR($a=0,$a<ARRSIZE($arr)) // в цикле читаем массив, копируем в буфер и вставляем
TOCLIP($arr[$a])
WAITMS(50)
KEYDOWN (#CTRL)
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS (50)
KEYPRESS(#TAB)
WAITMS (500)
END_CYC
UNDEFINE($arr) // удаляем массив
// тут переходим к следующему документу.
Можно также встроить определение данных с М и Ж и датами. Только нужно больше представления как выглядят эти данные и как происходит ввод и смена документов.
-
Спасибо за ответ. Я пока много не понимаю и если не ошибаюсь, то вы решаете проблему с таблицей и переносом информации в целом. А мне бы как нибудь проще и доступно для моего понимания :) основная проблема была не в переносе информации, а в дереве сайта - лазить туда-обратно по разным веткам. Пусть пока примитивно, просто сделал клики по координатам. Но это не суть...
Меня интересует, можно ли с чем либо сравнить скопированную ячейку, сравнить из буфера обмена? Если можно то как? и если совпадает то выполнить одно действие клик сюда и пропустить вторую проверку, если не совпадает то выполнить вторую проверку и если совпало то клик туда...
-
мдэ..
// анализируем что в буфере
IF(FROMCLIP() = "М")
LCLICK(10,10) // если М то клик туда
WAITMS(500)
ELSE
IF(FROMCLIP() = "Ж")
LCLICK(20,20) // если Ж то клик сюда
WAITMS(500)
ELSE
IF(STRLEN(STRFILTER(FROMCLIP(), "0123456789.", 0)) = 0)
KEYSTRING(FROMCLIP()) // если в буфере цифры с точками то печатаем
WAITMS(500)
ELSE
// если что то другое то просто вставляем
KEYDOWN (#CTRL) // Ctrl+V
WAITMS (50)
KEYDOWN (#V)
WAITMS (50)
KEYUP (#V)
KEYUP (#CTRL)
WAITMS(500)
END_IF
END_IF
END_IF
-
Спасибо, пока поверил только первую часть, где м и ж. Работает. Есть только трудность с тем что при копировании целой ячейки, копируются не только буквы...
-
Здравствуйте
не работает
если копировать ячейку в excel, то копируется её содержимое + Символ параграфа (§), а clickermann этого не понимает и при анализе буфера обмена всегда считает что условие IF(FROMCLIP) не верно
как решить эту проблему?
-
решил проблему через макрос в екселе