从访问 VBA 调用 Javascript 函数
Posted
技术标签:
【中文标题】从访问 VBA 调用 Javascript 函数【英文标题】:Calling Javascript function from access VBA 【发布时间】:2015-12-07 16:20:40 【问题描述】:在访问 vba 时,我可以从网站检索 href 标记,但我发现 href 值触发的是 javascript 函数而不是链接。 javascript 函数将用户定向到我想要的链接。我的问题是:如何通过 VBA 触发 javacript 函数?
Set ie1 = New InternetExplorer
ie1.Navigate b.href 'Error here
'wait for website to load
Do: Loop While ie1.Busy Or ie1.ReadyState <> 4
Set blist = html.getElementsByTagName("td")
For Each c In blist
address = c.innerText
Debug.Print address
Next c
编辑:b 看起来像这样<a href="javascript:dspctry(71)">DNK</a>
【问题讨论】:
你能提供实际的网址吗?或者至少发布触发链接的HTML代码? ...或查看this answer 是href还是原网站? 要点击链接的站点的 URL(javascript 函数)或该点击的 HTML 代码(函数) 刚刚在描述中添加了它 我知道我之前遇到过同样的问题 .. 见 this question 几个月前我问过,如果它解决了问题,请告诉我......页面上的任何一个答案...也许它不一样,但看起来很相似...你能发布javascript函数吗? 【参考方案1】:解决了,我使用 IE.Document.parentWindow.excScript(b.href,"Javacript") 调用 javascript 函数,同时将其 IE.Document 设置为我当前的。
'b.Click
Call HTML.parentWindow.execScript(b.href, "Javascript")
Do: Loop While ie.Busy Or ie.ReadyState <> 4
Set blist = HTML.getElementsByTagName("td")
For Each c In blist
address = c.innerText
If InStr(address, "Email: ") Then
Debug.Print address
End If
Next c
Set HTML = Nothing
Exit Function
【讨论】:
以上是关于从访问 VBA 调用 Javascript 函数的主要内容,如果未能解决你的问题,请参考以下文章
访问 VBA - 在网站上单击按钮或调用 javascript