Excel のイベント

用語 "エクセルイベント» は、ユーザーが Excel で実行した特定のアクションを示すために使用されます。 たとえば、ユーザーがワークブック シートを切り替えると、これがイベントになります。 セルへのデータの入力やブックの保存も Excel のイベントです。

イベントは、Excel ワークシート、グラフ、ワークブック、または Excel アプリケーション自体に直接リンクできます。 プログラマーは、イベントが発生したときに自動的に実行される VBA コードを作成できます。

たとえば、ユーザーが Excel ワークブックでワークシートを切り替えるたびにマクロを実行するには、イベントが発生するたびに実行される VBA コードを作成します。 シートアクティブ化 ワークブック。

また、特定のワークシートに移動するたびにマクロを実行する場合 (たとえば、 Sheet1)、VBA コードをイベントに関連付ける必要があります。 アクティブにしましょう このシートのために。

Excel イベントを処理するための VBA コードは、VBA エディター ウィンドウの適切なワークシートまたはワークブック オブジェクトに配置する必要があります (エディターは、 Altキー+ F11)。 たとえば、特定のイベントがワークシート レベルで発生するたびに実行する必要があるコードは、そのワークシートのコード ウィンドウに配置する必要があります。 これを図に示します。

Visual Basic エディターでは、ワークブック、ワークシート、またはグラフ レベルで使用可能なすべての Excel イベントのセットを表示できます。 選択したオブジェクトのコード ウィンドウを開き、ウィンドウの上部にある左側のドロップダウン メニューからオブジェクト タイプを選択します。 ウィンドウ上部の右側のドロップダウン メニューには、このオブジェクトに定義されたイベントが表示されます。 次の図は、Excel ワークシートに関連付けられたイベントのリストを示しています。

Excel のイベント

右側のドロップダウン メニューで目的のイベントをクリックすると、このオブジェクトのコード ウィンドウにプロシージャが自動的に挿入されます。 サブ. 手続きの先頭に サブ Excel は、必要な引数 (存在する場合) を自動的に挿入します。 あとは、目的のイベントが検出されたときにプロシージャが実行するアクションを決定する VBA コードを追加するだけです。

次の例では、セルが選択されるたびに B1 ワークシートに Sheet1 メッセージ ボックスが表示されます。

このアクションを実行するには、ワークシート イベントを使用する必要があります 選択変更、セルまたはセル範囲の選択が変更されるたびに発生します。 関数 選択変更 引数として受け取る ターゲット オブジェクト - . これにより、どのセル範囲が選択されたかがわかります。

イベント 選択変更 新しい選択で発生します。 ただし、セルが選択されたときにのみ実行される一連のアクションが必要です B1. これを行うには、指定された範囲でのみイベントを追跡します ターゲット. 以下に示すプログラムコードでの実装方法:

'現在のワークシートでセル B1 が選択されたときにメッセージ ボックスを表示するコード。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'セル B1 が選択されているかどうかを確認します If Target.Count = 1 And Target.Row = 1 And Target.Column = 2 Then 'セル B1 が選択されている場合は、次の操作を行います MsgBox "You haveセルを選択 B1" End If End Sub

コメントを残す