0

VBA/ExcelのWebブラウザコントロールを使用してイントラネットを参照するようにuserform1を設定しました。私が抱えている問題は、ユーザーが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でスタックし、Webページを介してuserform2に正しく転送されていないように見えることです。ここで私の論理がどこで間違っているのかわかりません。アドバイスがあれば役に立ちます。ほとんどのガイドが示しています:

Set ppDisp = frm.WebBrowser1.object

しかし、オブジェクトブラウザのどこにもそれを見つけることができず、エラー438として.objectが爆破されます:オブジェクトはこのプロパティまたはメソッドをサポートしていません。しかし、これまでに見つけたものはすべて、.objectを使用していることを示しています。

4

1 に答える 1

0

これを読んでいる人にとって、VBAは上記のようにこの方法をサポートしません。それは.netで完全に機能し、vb6だと思います

于 2013-02-22T13:29:53.883 に答える