How do I make this VBA example work with Firefox/Imacros?

Discussions and Tech Support related to automating the iMacros Browser or Internet Explorer from any scripting and programming language, such as VBS (WSH), VBA, VB, Perl, Delphi, C# or C++.
Forum rules
Before asking a question or reporting an issue:
1. Please review the list of FAQ's.
2. Use the search box (at the top of each forum page) to see if a similar problem or question has already been addressed.
3. Try searching the iMacros Wiki - it contains the complete iMacros reference as well as plenty of samples and tutorials.
4. We can respond much faster to your posts if you include the following information: CLICK HERE FOR IMPORTANT INFORMATION TO INCLUDE IN YOUR POST
Post Reply
Nill2016
Posts: 3
Joined: Thu Feb 09, 2017 9:51 pm

How do I make this VBA example work with Firefox/Imacros?

Post by Nill2016 » Mon Mar 26, 2018 3:57 pm

I tried to use this sample code with firefox, but it appears this error: "Run-time error '429': ActiveX component can not create object". What do you have to do to make it work?

https://wiki.imacros.net/Excel_VBA_Example_Code

Code: Select all

Option Explicit
   
   Private Sub CommandButton1_Click()
   
   MsgBox "This macro demonstrates how to read data from an Excel sheet and submit this information to a website."
   
   Dim iim1, iret, row, totalrows
   
   Set iim1 = CreateObject("imacros")
   iret = iim1.iimInit
   'Firefox iret = iim1.iimInit ("-fx")
   iret = iim1.iimDisplay("Submitting Data from Excel")
   
   totalrows = ActiveSheet.UsedRange.Rows.Count
   For row = 2 To totalrows
      'Set the variables
      iret = iim1.iimSet("FNAME", Cells(row, 1).Value)
      iret = iim1.iimSet("LNAME", Cells(row, 2).Value)
      iret = iim1.iimSet("ADDRESS", Cells(row, 3).Value)
      iret = iim1.iimSet("CITY", Cells(row, 4).Value)
      iret = iim1.iimSet("ZIP", Cells(row, 5).Value)
      iret = iim1.iimSet("STATE-ID", Cells(row, 6).Value)
      iret = iim1.iimSet("COUNTRY-ID", Cells(row, 7).Value)
      iret = iim1.iimSet("EMAIL", Cells(row, 8).Value)
      'Set the display
      iret = iim1.iimDisplay("Row# " + CStr(row))
      'Run the macro
      'Same macro as in database-2-web.vbs example!
      iret = iim1.iimPlay("wsh-submit-2-web")
      If iret < 0 Then
         MsgBox iim1.iimGetLastError()
      End If
   Next row
   
   iret = iim1.iimDisplay("Submission complete")
   iret = iim1.iimExit
   
   End Sub

Code: Select all

 VERSION BUILD=700705  
 TAB T=1     
 TAB CLOSEALLOTHERS     
 URL GOTO=http://www.iopus.com/imacros/demo/v6/f2/automatic-data-entry.asp     
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:FNAME CONTENT={{FNAME}}
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:LNAME CONTENT={{LNAME}}
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:ADDRESS CONTENT={{ADDRESS}}
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:CITY CONTENT={{CITY}} 
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:ZIP CONTENT={{ZIP}}
 'Tip: Use the string ($) instead of the index to select the state and country 
 'Index would be the position of an entry in the combo box list, e. g. 161 for United States
 'The $ option is more robust against changes of the combo box content
 'Note * is used to ignore leading and trailing blanks that could be in the input data
 TAG POS=1 TYPE=SELECT FORM=NAME:WebDataEntry ATTR=NAME:STATEID CONTENT=$*{{STATE-ID}}*
 TAG POS=1 TYPE=SELECT FORM=NAME:WebDataEntry ATTR=NAME:COUNTRYID CONTENT=$*{{COUNTRY-ID}}*
 TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:WebDataEntry ATTR=NAME:EMAIL CONTENT={{EMAIL}}
 TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:WebDataEntry ATTR=NAME:SendButton&&VALUE:Click<SP>to<SP>submit<SP>data  
 TAG POS=1 TYPE=A ATTR=TXT:Back
Nill2016
Posts: 3
Joined: Thu Feb 09, 2017 9:51 pm

Re: How do I make this VBA example work with Firefox/Imacros

Post by Nill2016 » Tue Mar 27, 2018 4:10 pm

I test this procedure with excel 2010 and 2016 with firefox version 56 on windows 7
Post Reply