投稿日 | : 2004/07/22(Thu) 15:15 |
投稿者 | : りっとっと |
Eメール | : |
URL | : |
タイトル | : Re: WebBrowserにてEXCELの値を取得する |
できなくもないですけどね
Private xlBook As Excel.Workbook
Private WithEvents xlSheet As Excel.Worksheet
Private Sub Form_Load()
WebBrowser1.Navigate "c:\book1.xls"
End Sub
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
Set xlBook = pDisp.Document
Set xlSheet = xlBook.ActiveSheet
xlBook.Application.Visible = False
End Sub
Private Sub xlSheet_BeforeRightClick(ByVal Target As Excel.Range, Cancel As Boolean)
PopupMenu mnuTest
Cancel = True
End Sub
とこんな感じで、エクセルのシートオブジェクトをWithEventsステートメントつきで宣言すれば
xlSheetでのイベントが拾えますので、BeforeRightClickイベントで、引数のCancelにTrueを入れれば
キャンセルされ、エクセルのポップアップメニューは表示されません。
サンプルを実行するとわかりますが、PopupMenuでVBのメニューを表示させクリックもできるのですが
クリックできるまで間が生じてしまいます。この間をどうにかして消せないものかな