Run-Time Error 91 for Internet Explorer .elements(name).value

  • Thread starter Thread starter chris_j_adams
  • Start date Start date
C

chris_j_adams

Hi,

Can anyone provide some advice as to why the line marked "ERROR" below
results in a Run-time error 91?

I know it relates to .elements(nm).Value. I've successfully tested to
see if I can hard-code the name and debug.print the value. However it
won't accept a built-up string (nm).

Sub Test()

Set IeApp = New InternetExplorer
IeApp.Visible = True
IeApp.Navigate "http://www.mywebsite.com"
Do: Loop Until IeApp.ReadyState = READYSTATE_COMPLETE

With IeApp.Document.forms("form")
For Each cell In rng
nm = "rates[" & cell & "]"
cell.Offset(0, 1) = .elements(nm).Value <== ERROR
Next cell
End With

End Sub

Many thanks in advance if anyone can provide some advice.
Regards,
Chris Adams
 
Btw, below is the HTML code that I'm trying to extract the value from.
Basically, its a table with boxes populated by numbers, and I'm trying
to get the numbers.

<table class="layout">
<tr>
<td class="layout" valign="top">
<table>
<tr>
<th>Ccy</th>
<th>1 GBP =</th>
</tr>
<tr>
<td>AED</td>
<td><input type="text" class="rate"
name="rates[AED]"
value="6.8026" /></td> <==
VALUE TO GET
</tr>
 
Btw, below is the HTML code that I'm trying to extract the value from.
Basically, its a table with boxes populated by numbers, and I'm trying
to get the numbers.

<table class="layout">
<tr>
<td class="layout" valign="top">
<table>
<tr>
<th>Ccy</th>
<th>1 GBP =</th>
</tr>
<tr>
<td>AED</td>
<td><input type="text" class="rate"
name="rates[AED]"
value="6.8026" /></td> <==
VALUE TO GET
</tr>
 
For what its worth, I've fashioned a workaround, less elegant but its
working so far. I loop through the table and push the values back to
Excel. Here's the code.

With IeApp.Document.forms("form")
r = .elements.Length - 3
For i = 1 To r
ccy = Mid(.elements(i).Name, 7, 3)
ccyVal = .elements(i).Value
Set rngCCY = rng.Find(ccy)
rngCCY.Offset(0, 1) = ccyVal
Next i
End With

Thanks to those who took the time to check it out anyway.
Regards,
Chris Adams
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top