0

我已经设置了一个 userform1 来使用 VBA/Excel 中的 Web 浏览器控件浏览 Intranet。我遇到的问题是,当用户通过 Web 浏览器控件启动弹出窗口时,该弹出窗口默认在 IE 中运行,超出了 Web 浏览器控件的范围,因此在弹出窗口中不包含正确的会话数据。此弹出窗口从下拉框、onchange 命令启动,然后将弹出窗口中的输入插入到页面上的 Web 表单中。下面的代码拦截弹出事件并让您处理它,通过将其传输到 userform2

Private Sub WebBrowser1_NewWindow2(ppDisp As Object, Cancel As Boolean)

Dim frm As UserForm2
'Dim ppDisp As Object

Set frm = New UserForm2

Set ppDisp = frm.WebBrowser1.Application

frm.Show

End Sub

问题是,当我暂停时,它现在卡在 frm.show 上,并且似乎没有积极地将网页正确传输到 userform2。我不确定我的逻辑在哪里错了,任何建议都会有所帮助。大多数指南显示:

Set ppDisp = frm.WebBrowser1.object

但我无法在任何地方的对象浏览器中找到它,并且做 .object 炸弹,因为错误 438:对象不支持此属性或方法。但到目前为止,我能找到的所有内容都显示使用 .object。

4

1 回答 1

0

对于任何阅读本文的人,VBA 不会像上面所说的那样支持这种方法。它在.net中完美运行,我会假设,vb6

于 2013-02-22T13:29:53.883 回答