|
▼ichinose さん:
>▼B-BOSS さん:
>こんにちは。
>>アドインに登録したコードで
>>現在アクティブなワークシートに対し、WORKSHEET_Change イベントを
>>作成する様なコードを書きたいのですが、可能でしょうか?
>クラスモジュールを使用すると、可能です。
>アドインにクラスモジュールを追加してください(既定の名前のClass1とします)。
>クラスモジュールに、
>'=======================================================
> Public WithEvents app As Application
> Private WithEvents acc_bk As Workbook
>'========================================================
>Private Sub acc_bk_SheetChange(ByVal Sh As Object, ByVal Target As Range)
> MsgBox "ブック: " & acc_bk.Name & "-シート: " & Sh.Name & "-:セル: " _
> & Target.Address & " が変更されました"
>'ここにコードを書きます
>End Sub
>'=====================================================
>Private Sub app_WorkbookActivate(ByVal Wb As Workbook)
> Set acc_bk = Wb
>End Sub
>'=====================================================
>Private Sub Class_Initialize()
> Set app = Application
> Set acc_bk = ActiveWorkbook
>End Sub
>
>次にアドインのThisworkbookモジュールに
>'======================================================
private app_ev As Class1
'↑に変更してください
>Private Sub Workbook_Open()
> Set app_ev = New Class1
>End Sub
>
>簡単なテストのみしかしていませんが、確認してください。
|
|