2013-03-20 12 views
8

私はC#.netで作業していますが、基本的には、ユーザーが保存したときに保存がExcel自体から来ているか、保存されているかどうかをプラグインで確認できます。 "アプリケーションのVisual Basic"ウィンドウから取得します。VBAウィンドウでの表示方法

ユーザーが現在「Microsoft Visual Basic for Application」にいるかどうかを確認する方法はありますか?

編集: これは完全なソリューションであるかどうかわかりませんが、私はそれを発見しました.Application.ActiveWindow.ActiveSheet == nullが動作しているようです。エラー後藤0 にセットWBK =ワークブック( "MyBook.xls")次のエラー履歴書に

+5

はい、これはかなり簡単です。あなたが遭遇している困難は何ですか? –

+0

ActiveSheetが問題を解決しましたか? –

+0

Andre Neves - そうでした。遅すぎる返事には申し訳ありません – user1255276

答えて

2

は何も_ セットWBK = workbooks.open( "Mybook.xls")ではないWBKある

1

プロジェクトのVBEウィンドウが開いている場合は、boolean True/Falseを返すような処理を行うことができます。私はC#の同等がどうなるかわからないんだけど、あなたは単にワークブックのVBProject VBエディタがアクティブであるかどうかを確認することができる場合があります。これは、VBプロジェクトオブジェクトモデルへの信頼できるアクセスを有効にする必要が

Function IsVBEActive(wb as Workbook) As Boolean 

Dim vbProj 

Set vbProj = wb.vbProject 

IsVBEActive <> vbProj.VBE.ActiveWindow Is Nothing 

End Sub 

NOTE

enter image description here

関連する問題