imacros read from excel

2019-09-07 07:48发布

问题:

I have a code to import data from csv file to iMacros and the part at which i am struck now is the iMacros is printing the values of the excel row wise and i want it to be printed in colulmn wise. I Get this error though I have used the {keyword !Col1}}

VERSION BUILD=10.4.28.1074
'Uses a Windows script to submit several datasets to a website, e. g. for filling an online database
' Specify input file (if !COL variables are used, IIM automatically assume a CSV format of the input file
'CSV = Comma Separated Values in each line of the filE
TAB T=1
SET !DATASOURCE C:\Users\Arun\Desktop\Book2.csv
'Start at line 2 to skip the header in the file
SET !LOOP 1
'Increase the current position in the file with each loop 
SET !DATASOURCE_LINE {{!LOOP}}
' Fill web form   
URL GOTO=https://docs.google.com/forms/d/e/1FAIpQLSdDj_Rrydyd1ukk56tOL92LAu-jE9qfi1GwsAUTT1gviZNG7w/viewform?c=0&w=1
TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:mG61Hd ATTR=NAME:emailAddress CONTENT={{!COL1}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:mG61Hd ATTR=NAME:entry.2005620554 CONTENT={{!COL2}}
TAG POS=1 TYPE=INPUT:EMAIL FORM=ID:mG61Hd ATTR=NAME:entry.1045781291 CONTENT={{!COL3}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:mG61Hd ATTR=NAME:entry.1065046570 CONTENT={{!COL4}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:mG61Hd ATTR=NAME:entry.1166974658 CONTENT={{!COL5}}
TAG POS=1 TYPE=INPUT:TEXT FORM=ID:mG61Hd ATTR=NAME:entry.839337160 CONTENT={{!COL6}}

'Note * is used to ignore leading and trailing blanks that could be in the input data
'
'The precent (%) symbol is used to select the stateid by VALUE as defined in the website select statement and not by its index.

'
'The string ($) symbol is used to select the country by TEXT, not by its index.
'Index would be the position of an entry in the combo box list, e. g. 161 for United States

回答1:

Take a look at one of the acceptable workarounds given below. Let's suppose that your CSV file doesn't contain any exclamation marks and has a comma as the datasource delimiter.

' fake delimiter
SET !DATASOURCE_DELIMITER "!"
' real delimiter
SET rd ","

SET !DATASOURCE Address.csv

SET !DATASOURCE_LINE 2
SET row2 EVAL("'{{!COL1}}'.split('{{rd}}')[{{!LOOP}}-1];")
SET !DATASOURCE_LINE 3
SET row3 EVAL("'{{!COL1}}'.split('{{rd}}')[{{!LOOP}}-1];")
SET !DATASOURCE_LINE 4
SET row4 EVAL("'{{!COL1}}'.split('{{rd}}')[{{!LOOP}}-1];")
' ...

PROMPT {{row2}}<BR>{{row3}}<BR>{{row4}}

Play this macro in loop mode. It must work in 'iMacros add-on' for Firefox or Chrome. I think my tip should help you.



标签: excel imacros