1.ワークブックのイベント

以下はワークブックの主なイベントです。

イベント説明
Openワークブックが起動された時
BeforeCloseワークブックが閉じられる前
ActivateワークブックがActiveになった時
Deactivateワークブックが非Activeになった時 注1
BeforeSaveワークブックの保存前
WindowActivateExcelがActiveになった時 注1
WindowDeactivateExcelが非Activeになった時
WindowResizeExcelのサイズが変更された時

注1:ActivateとWindowActivateは、他のActiveでないWorkBookが閉じた時にも呼ばれようとするらしく、その時自分自身は既にActiveなためか、「アプリケーション定義またはオブジェクト定義のエラーです。」が発生します。該当のプロシージャが呼ばれる前にエラーが発生するので対応方法が見つかっていません。

2.ワークブックに対しての処理

  1. ) WorkBookを非表示にする
    Private Sub Workbook_Open()
       If ActiveWindow.Caption = ThisWorkbook.name Then
          ActiveWindow.visible = False
       End If
    End Sub
    
  2. ) WorkBookのTitleの設定
       Application.Caption = "Title"          '設定
       Application.Caption = vbNullString     '設定リセット
    
    WorkBookがActivateになった時に名前を設定すると便利です。
        Public Const BookTitle As String = "Compass"
    
    Private Sub Workbook_Activate()
    
        Application.Caption = BookTitle
    
    End Sub
    
  3. ) StatusBarの設定
    計算途中に各処理毎にステータスバーにメッセージを設定すると計算経過が分かってイライラが解消されます。
       Application.StatusBar = "Message"     '設定
       Application.StatusBar = False         '設定リセット
    
  4. ) ワークブックを閉じるプロシージャ
    Public Sub example401_Close()
       
       ThisWorkbook.Close
    
    End Sub
    
  5. ) エラーチェックオプション
  • エラーチェックオプション設定値取得
    Private Sub Workbook_Open()
    
        blnErrChk = Application.ErrorCheckingOptions.BackgroundChecking
        
    End Sub
    
  • エラーチェックオプション無効
    Private Sub Workbook_Activate()
    
        Application.ErrorCheckingOptions.BackgroundChecking = False
    
    End Sub
    
  • エラーチェックオプション設定
    Private Sub Workbook_Deactivate()    
    
        Application.ErrorCheckingOptions.BackgroundChecking = blnErrChk
    
    End Sub
    

最終更新のRSS
Last-modified: 2014-03-11 (火) 01:58:42 (3698d)