Applies ToAccess for Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Access のデータ マクロを使用すると、データの追加、更新、削除など、テーブルで発生するイベントにロジックを追加できます。 これらは、Microsoft SQL Serverの "トリガー" に似ています。 この記事では、データ マクロを作成およびデバッグする方法について説明します。

この記事の内容

データ マクロについて

データ マクロは、データシート ビューでテーブルを表示しているときに [ テーブル ] タブから管理され、ナビゲーション ウィンドウの [マクロ ] には表示されません。 特に、データ マクロを使用して、テーブル内のデータの精度を検証および確認できます。 メイン データ マクロには、テーブル イベント ("イベント ドリブン" データ マクロとも呼ばれます) によってトリガーされるデータ マクロと、名前 ("名前付き" データ マクロとも呼ばれます) によって呼び出されることに応答して実行される 2 種類のデータ マクロがあります。

ページの先頭へ

イベント ドリブン データ マクロをCreateする

テーブル イベントは、テーブル内のデータを追加、更新、または削除するたびに発生します。 データ マクロをプログラムして、これら 3 つのイベントの直後、または削除イベントまたは変更イベントの直前に実行できます。 テーブル イベントにデータ マクロをアタッチするには、次の手順に従います。

  1. ナビゲーション ウィンドウで、データ マクロを追加するテーブルをダブルクリックします。

  2. [ テーブル ] タブの [ イベントの前 ] グループまたは [ イベント後 ] グループで、マクロを追加するイベントをクリックします。 たとえば、テーブルからレコードを削除した後に実行されるデータ マクロを作成するには、[ 削除後] をクリックします。

    注: イベントに既にマクロが関連付けられている場合は、そのアイコンがリボンで強調表示されます。

    [マクロ ビルダー] が開きます。 このイベントに対してマクロが以前に作成されている場合は、既存のマクロが表示されます。

  3. マクロで実行するアクションを追加します。

  4. マクロを保存して閉じます。

マクロの作成の詳細については、ユーザー インターフェイス (UI) マクロCreate記事を参照してください。

ページの先頭へ

名前付きデータ マクロをCreateする

名前付きまたは "スタンドアロン" データ マクロは、特定のテーブルに関連付けられますが、特定のイベントには関連付けされません。 名前付きデータ マクロは、他のデータ マクロまたは標準マクロから呼び出すことができます。

  1. ナビゲーション ウィンドウで、データ マクロを追加するテーブルをダブルクリックします。

  2. [テーブル] タブの [名前付きマクロ] グループで、[名前付きマクロ] をクリックし、[名前付きマクロのCreate] をクリックします。

    Access によってマクロ ビルダーが開き、アクションの追加を開始できます。

マクロの作成の詳細については、ユーザー インターフェイス (UI) マクロCreate記事を参照してください。

パラメーターについて

パラメーターを使用すると、条件付きステートメントやその他の計算で使用できるように、名前付きデータ マクロに値を渡すことができます。 また、標準マクロからデータ マクロにオブジェクト参照を渡すこともできます。

注: パラメーターは、イベント ドライブ データ マクロでは使用できません。

データ マクロにパラメーターを追加するには:

  1. マクロの上部にある [パラメーター] Createクリックします

  2. [ 名前 ] ボックスに、パラメーターの一意の名前を入力します。 これは、式のパラメーターを参照するために使用する名前です。

  3. 必要に応じて、[説明] ボックスにパラメーターの 説明 を入力します。 後で パラメーターを使用すると、ここに入力した説明テキストがヒントに表示されるため、説明を入力することをお勧めします。 これは、パラメーターの目的を思い出すのに役立ちます。

別のマクロから名前付きデータ マクロを実行するには、 RunDataMacro アクションを使用します。 アクションには、作成した各パラメーターのボックスが用意されているため、必要な値を指定できます。

ページの先頭へ

データ マクロを管理する

データ マクロは、ナビゲーション ウィンドウの [ マクロ] には表示されません。 テーブル データシート ビューまたはテーブル デザイン ビューのリボン コマンドを使用して、データ マクロの作成、編集、名前変更、削除を行う必要があります。

イベント ドリブン データ マクロを編集する

  1. ナビゲーション ウィンドウで、編集するデータ マクロを含むテーブルをダブルクリックします。

  2. [ テーブル ] タブの [ イベントの前 ] グループまたは [ イベント後 ] グループで、編集するマクロのイベントをクリックします。 たとえば、テーブルからレコードを削除した後に実行されるデータ マクロを編集するには、[ 削除後] をクリックします。

    注: イベントにマクロが関連付けられていない場合、そのアイコンはメニューで強調表示されません。

    Access によってマクロ ビルダーが開き、マクロの編集を開始できます。

名前付きデータ マクロを編集する

  1. ナビゲーション ウィンドウで、任意のテーブルをダブルクリックしてデータシート ビューで開きます。

  2. [ テーブル ] タブの [ 名前付きマクロ ] グループで、[ 名前付きマクロ] をクリックし、[ 名前付きマクロの編集] をポイントします。

  3. サブメニューで、編集するデータ マクロをクリックします。

    Access によってマクロ ビルダーが開き、マクロの編集を開始できます。

名前付きデータ マクロの名前を変更する

  1. ナビゲーション ウィンドウで、任意のテーブルをダブルクリックしてデータシート ビューで開きます。

  2. [ テーブル ] タブの [ 名前付きマクロ ] グループで、[ 名前付きマクロ] をクリックし、[ 名前の変更/削除] をクリックします。

  3. [ データ マクロ マネージャー ] ダイアログ ボックスで、 名前を変更 するデータ マクロの横にある [名前の変更] をクリックします。

    Access では、現在のマクロ名が選択されます。

  4. 新しい名前を入力するか、既存の名前を編集して Enter キーを押します。

データ マクロを削除する

名前付きデータ マクロまたはイベント ドリブン データ マクロを削除するには、次の手順に従います。

  1. ナビゲーション ウィンドウで、任意のテーブルをダブルクリックしてデータシート ビューで開きます。

  2. [ テーブル ] タブの [ 名前付きマクロ ] グループで、[ 名前付きマクロ] をクリックし、[ 名前の変更/削除] をクリックします。

  3. [ データ マクロ マネージャー ] ダイアログ ボックスで、名前を変更するデータ マクロの横にある [削除] をクリック します

注:  また、すべてのアクションを削除することで、イベント ドリブン マクロを削除することもできます。

ページの先頭へ

データ マクロのデバッグ

一部の一般的なマクロ デバッグ ツール (シングル ステップ コマンドや MessageBox マクロ アクションなど) は、データ マクロでは使用できません。 ただし、データ マクロで問題が発生している場合は、OnError、RaiseError、LogEvent の各マクロ アクションと組み合わせてアプリケーション ログ テーブルを使用して、データ マクロ エラーを見つけることができます。

アプリケーション ログ テーブルを表示する

アプリケーション ログ テーブルはシステム テーブル (USysApplicationLog という名前) であり、既定ではナビゲーション ウィンドウには表示されません。 データ マクロでエラーが発生した場合は、アプリケーション ログ テーブルに情報を表示することで、何が起こったかを知ることができる場合があります。

アプリケーション ログ テーブルを表示するには、次の手順に従います。

  1. [ ファイル ] をクリックして Microsoft Backstage ビューを開きます。

  2. [ 情報 ] タブで、[ アプリケーション ログ テーブルの表示] をクリックします。

    注:  [ アプリケーション ログ テーブルの表示 ] ボタンが表示されない場合は、このデータベースに対してアプリケーション ログ テーブルがまだ作成されていないことを意味します。 イベントがログに記録されると、[ 情報 ] タブにボタンが表示されます。

LogEvent アクションまたは RaiseError アクションを使用して、アプリケーション ログ テーブルに行を作成し、OnError アクションを使用して Access がエラーに反応する方法を制御できます。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。