ワークブックのイベントを追加するには
ワークブックを開いたときや閉じたときのイベントを取得し、特定の操作させることができます。「ワークブックを開いたときに特定のシートを選択させる」、「ワークブックを閉じたときに保存させる」といったことができるようになります。
イベントは Workbook_イベント名 のように書きます。
これは、VBE(エディタ)の上部にある(Genaral)でWorkbookを、(Declarations)でOpenを選択することで同じ記述が自動で行われます。
イベントによって引数の書き方が違うので、自分で書かずに(Genaral)と(Declarations)から選択してください。
ワークブックを開いたときのイベント
Private Sub Workbook_Open () ・・・ End Sub |
ワークブックを閉じたときのイベント
Private Sub Workbook_Close (Cancel As Boolean) ・・・ End Sub |
ワークブックを開いたときに特定のシートを選択するサンプル
Sheets("Sheet2").Select でシート"Sheet2"を選択してから、Cells(1,1).Select でセルA1を選択しています。
Private Sub Workbook_Open () ' Sheet2を選択 Sheets("Sheet2").Select ' A1を選択 Cells(1,1).Select End Sub |
ワークブックを閉じたときに強制的に保存するサンプル
ActiveWorkBook.Saved で現在のワークブックの保存状態を確認しています。Trueなら保存済、Falseなら未保存です。
ActiveWorkBook.Save でブックを保存します。
Private Sub Workbook_Close (Cancel As Boolean) If Not ActiveWorkBook.Saved Then ' ブックを保存 ActiveWorkBook.Save End If End Sub |
ワークブックのイベントの種類
一般的なイベント
イベント名 | 内容 |
---|---|
Active | ワークブックがアクティブになったときに発生 |
BeforeClose | ワークブックが閉じる直前に発生 |
BeforePrint | ワークブックが印刷される直前に発生 |
BeforeSave | ワークブックが保存される直前に発生 |
Deactive | ワークブックが非アクティブになったときに発生 |
NewSheet | ワークブックに新しいシートが作成されたときに発生 |
Open | ワークブックが開いたときに発生 |
シートのイベント
イベント名 | 内容 |
---|---|
SheetActive | ワークシートがアクティブになったときに発生 |
SheetBeforeDoubleClick | ワークシートがダブルクリックされたとき、既定の処理がされる前に発生 |
SheetBeforeRightClick | ワークシートが右クリックされたとき、既定の処理がされる前に発生 |
SheetCalculate | ワークシートが再計算されたときに発生 |
SheetChange | ワークシートのセルが変更されたときに発生 |
SheetDeactive | ワークシートが非アクティブになったときに発生 |
SheetFollowHyperLink | ワークブック内のハイパーリンクがクリックされると発生 |
SheetPivotTableUpdate | ピボットテーブルが更新されたときに発生 |
SheetSelectionChange | ワークシートで選択範囲が変更されると発生 |
特殊なイベント
イベント名 | 内容 |
---|---|
WindowActive | ブックウィンドウがアクティブになったときに発生 |
WindowDeactive | ブックウィンドウが非アクティブになったときに発生 |
WindowResize | ブックウィンドウのサイズが変更されたときに発生 |
AddinInstall | ワークブックにアドインがインストールされたときに発生 |
AddinUninstall | ワークブックにアドインがアンインストールされたときに発生 |
AfterXmlExport | ワークブックからXMLファイルをエクスポートした後に発生 |
AfterXmlImport | ワークブックにXMLファイルをインポートした後に発生 |
BeforeXmlExport | ワークブックからXMLファイルをエクスポートする前に発生 |
BeforeXmlImport | ワークブックにXMLファイルをインポートする前に発生 |
PivotTableCloseConnection | ピボットテーブルのデータソースへの接続が終了した後に発生 |
PivotTableOpenConnection | ピボットテーブルのデータソースへの接続が終了した後に発生 |
RowsetComplete | レコードセット内を移動したり、 ピボットテーブルの行セットアクションを呼び出したときに発生 |
Excel VBA講座
Excel VBA とは
Excel VBAとは、Excelに標準で付いているプログラミング言語です。
VBAはVisual Basic for Applicationsの略で、プログラムの構文は、Vi... |
色を設定するには(ColorIndex、Color)
色の指定方法にはColorIndexとColorの2種類があります。
セルの文字色の場合は Font に、背景色の場合は Interior に... |
VBE とは
VBE (Visual Basic Editor) とは、Excelに搭載したVBA用のエディターのことです。
VBEを起動するには、Excelの「ツール」→「マクロ」→「Visual... |