3

Excel 2007 の 1 つの Excel アドイン プロジェクトで、新しいブックの作成イベントを確認する必要があります。また、非常に簡単に行った Workbook_Open イベントをキャッチする必要がありました...インターネットでの調査で、次のことがわかりました。

Application.WorkbookOpen は、ワークブックが開かれると発生します。Excel は、開かれた Workbook をパラメーターとしてこのイベントに渡します。このイベントは、新しい空白のブックが作成されたときには発生しません。代わりに Application.WorkbookNew イベントが発生します。

残念ながら、これまで Application.WorkbookNew イベントを見つけることができませんでした...何か不足していますか?

アプリケーションを入力した後。オートコンプリートは、Workbook (Open を含む) のイベントの素敵で長いリストを提供しますが、WorkbookNew イベントが見つかりません...

何か案は?

ありがとうございました!

4

1 に答える 1

7

を探していApplication.NewWorkbook eventます。ここに VBA リファレンスがあります。そして、ここにC#/VB.Netの例があります

編集:

この情報の有効性を確認することはできませんが、次の説明(リンク)を見つけました。

NewWorkbook イベントは、アプリケーション レベルのイベントです。同じ名前のプロパティもあるため、アプリケーション オブジェクトをアプリケーション イベントに明示的にキャストしない限り、Intellisense はこれを表示しません。

        ((Excel.AppEvents_Event)ThisApplication).NewWorkbook += new Microsoft.Office.Interop.Excel.AppEvents_NewWorkbookEventHandler(ThisWorkbook_NewWorkbook);

イベント ハンドラ:

    void ThisWorkbook_NewWorkbook(Microsoft.Office.Interop.Excel.Workbook Wb)
    {
        MessageBox.Show("New workbook" + Wb.Name);
    }

操作しようとしていた手順は、ThisWorkbook VBA プロジェクトでのみ有効です。直接の Excel 環境以外では使用できません。

于 2012-10-15T18:45:16.340 に答える