Я только начал использовать imacro, но я понятия не имею, как установить бесконечный цикл.
Мой код:
set !loop 3
VERSION BUILD=8530828 RECORDER=FX
TAB T=1
REFRESH
TAG POS=3 TYPE=A ATTR=TXT:Like
TAB T=2
WAIT SECONDS=3
TAG POS=1 TYPE=LABEL ATTR=ID:timelineHeadlineLikeButton
WAIT SECONDS=2
TAB CLOSE
TAB T=1
WAIT SECONDS=5
set !loop 3
VERSION BUILD=8530828 RECORDER=FX
TAB T=1
REFRESH
TAG POS=3 TYPE=A ATTR=TXT:Like
TAB T=2
WAIT SECONDS=3
TAG POS=1 TYPE=LABEL ATTR=ID:timelineHeadlineLikeButton
WAIT SECONDS=2
TAB CLOSE
TAB T=1
WAIT SECONDS=5
SET !VAR1 3
SET !VAR2 {{!LOOP}}
ADD !VAR1 -{{!VAR2}}
TAB T={{!VAR1}}
(3 означает 2, потому что цикл не может установить 0) или:
SET !VAR1 2
SET !VAR1 {{!LOOP}}
ADD !VAR1 {{!LOOP}}
ADD !VAR1 -1
TAB T={{!VAR1}}
Петля с Javascript:
var loop;
function play(loop) {
for (i=0;i<loop,i++;) {
iimPlay("macro.iim"); //Play Your Macro
}
}
play(999); //loops macro 999 times
Вы также можете прокручивать массив данных в макросе:
var loop;
var dataline;
function play(dataline,loop) {
for (i=0;i<loop,i++;) {
iimSet("dataline",dataline); //set dataline (optional)
iimPlay("macro.iim"); //Play Your Macro
}
}
play(3,999); //starts on datasource line 3 loops 999 times
Затем в файле.iim
SET !DATASOURCE Address.csv //your csv datasource file
SET !DATASOURCE_LINE {{dataline}} //start on that line
TAG POS=1 TYPE=INPUT:TEXT CONTENT={{!COL1}} //1st line of your spreadsheet
Наслаждайтесь!
Просто запустите его с помощью кнопки Play (Loop), в которой указывается очень большое число в max box
TAB T=1
REFRESH
TAG POS=3 TYPE=A ATTR=TXT:Like
TAB T=2
WAIT SECONDS=3
TAG POS=1 TYPE=LABEL ATTR=ID:timelineHeadlineLikeButton
WAIT SECONDS=2
TAB CLOSE
TAB T=1
WAIT SECONDS=5
Вот бесконечный цикл, который предупреждает и ломается об ошибке и ждет 10 секунд между каждым циклом:
function play() {
for (i=1;i>0,i++;) {
iimPlay("macro.iim"); //Play Your Macro
if (iimGetErrorText()!="OK") { //if there is an error
alert(iimGetErrorText()); //alert the error
break; //break loop on error
}
iimPlayCode("WAIT SECONDS=10"); //Wait 10 Seconds between each loop
}
}
play();