Access 2007 マクロの基本

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

ここでは、マクロの機能と、頻繁に実行するタスクをマクロで自動化することにより作業を効率化する方法について説明します。また、マクロの基本的な作成方法と使用方法について解説し、Microsoft Office Access 2007 のマクロがいかに強化されたかについても触れます。

この記事の内容

マクロとは

マクロの構成

Office Access 2007 の新しいマクロ機能

クイック スタート: マクロを作成する

マクロを実行する

マクロとは

マクロは、タスクを自動化して、フォーム、レポート、およびコントロールに機能を追加できるようにするツールです。たとえば、フォームにコマンド ボタンを追加する場合、マクロにボタンのOnClickイベントに関連付けることと、マクロにボタンをクリックするたびに実行することのコマンドが含まれています。

マクロは、実行するアクションのリストを作成して記述する簡略なプログラミング言語と考えることができます。マクロを作成するとき、ドロップダウン リストからアクションを選択し、それぞれのアクションに必要な情報を提供します。マクロにより、Visual Basic for Applications (VBA) モジュールでコードを作成することなく、フォーム、レポート、およびコントロールに機能を追加することができます。マクロは VBA で使用可能なコマンドのサブセットとして機能し、一般的に VBA コードよりもマクロの方が簡単に作成できます。

たとえば、データ入力フォームのいずれかから直接、レポートを開始することがあるとします。フォームにボタンを追加し、[レポートを開始するマクロを作成できます。[マクロ] ボタンのOnClickイベントにバインドし、スタンドアロン マクロ (データベースの個別のオブジェクト)、またはのどちらかボタン自体のOnClickイベントに直接マクロを埋め込むことができます: Office Access 2007の新機能です。どちらの方法では、ボタンをクリックしたときにマクロが実行され、レポートが表示されます。

次の図に示すマクロ ビルダを使用すると、マクロを作成することができます。

マクロ ビルダー

マクロ ビルダを表示するには、次の操作を行います。

  • [作成] タブの [その] グループで、[マクロ] をクリックします。このコマンドを使用できない場合、モジュールまたはクラス モジュール] ボタンのいずれかの下にある矢印をクリックし、[マクロ] をクリックします。 ボタンの画像

    ヒント:  Access 2010 ではマクロ ビルダーのデザインが変わり、Access マクロの作成、変更、共有をより簡単に行うことができるようになりました。

ページの先頭へ

マクロの構成

スタンドアロン マクロ オブジェクト (つまり、オブジェクトをナビゲーション ウィンドウの [マクロ] の下を参照してください) を参照する用語マクロを使用頻度が、実際には、[マクロの 1 つのオブジェクトは、複数のマクロを含めることができます。その場合は、それと呼ばれるマクロ グループ。マクロ グループが 1 つのマクロをオブジェクトとしてナビゲーション ウィンドウで表示されますが、マクロ グループには実際には、複数のマクロが含まれています。もちろん、別のマクロをオブジェクトにマクロを作成することが多くの場合、いくつかの関連するマクロに 1 つのマクロのオブジェクトをグループ化する正しいします。[マクロ名] 列の名前は、各マクロを特定します。

マクロは、複数の個別のマクロ アクションで構成されます。通常、アクションには 1 つまたは複数の引数が必要です。さらに、マクロ グループ内の各マクロに名前を割り当てたり、アクションの実行を制御する条件を追加したりすることができます。以下のセクションでは、これらの機能について詳細に説明します。

マクロ名

マクロ オブジェクトに含まれるマクロが 1 つのみの場合は、マクロ名を割り当てる必要はありません。そのマクロは、マクロ オブジェクトの名前で識別することができます。しかし、マクロ グループの場合は、各マクロに固有の名前を割り当てる必要があります。マクロ ビルダーに [マクロ名] 列が表示されていない場合は、[デザイン] タブの [表示/非表示] で [マクロ名] ボタンの画像 をクリックします。マクロ グループに含まれるマクロの実行については、後で説明します。

引数

引数とは、メッセージ ボックスに表示する文字列や処理対象のコントロールなどの情報をアクションに提供する値です。引数には、必須のものと任意のものがあります。引数は、マクロ ビルダの下部にある [アクションの引数] ウィンドウに表示されます。

アクションの引数を入力する

Office Access 2007 のマクロ ビルダーには、新たに [引数] 列が追加されているため、アクションと同じ行にアクションの引数が表示されるようになりました (編集することはできません)。これで、引数を表示するのにアクションを選ぶ必要がなくなったため、より簡単にマクロの内容を確認できるようになりました。[引数] 列を表示するには、[デザイン] タブの [表示/非表示] で [引数] ボタンの画像 をクリックします。

条件

条件とは、アクションを起動する基準を指定するもので、条件が満たされなければ、アクションは実行されません。True/False または Yes/No として評価されるすべての式を使用することができます。式が False、No、または 0 (ゼロ) として評価されると、アクションは実行されません。式がそれ以外の値として評価されると、アクションは実行されます。

1 つの条件で複数のアクションを制御するには、条件を適用する後続のアクションごとに [条件] 列に省略記号 (...) を入力します。式が False、No、または 0 (ゼロ) として評価されると、どのアクションも実行されません。式がそれ以外の値として評価されると、すべてのアクションが実行されます。

マクロ ビルダに [条件] 列を表示するには、[デザイン] タブの [表示/非表示] で ボタンの画像 (条件) をクリックします。

アクションの実行に使用する式

条件

[都道府県]="大阪府"

マクロが実行されるフォームの [住所] フィールドの値が "大阪府" のとき。

DCount("[受注コード]", "受注")>35

[受注] テーブルの [受注コード] フィールドに 35 を超えるエントリがあるとき。

DCount("*", "受注明細", "[受注コード]=Forms![受注]![受注コード]")>3

[受注明細] テーブルで、[受注] フォームの [受注コード] フィールドと一致する [受注コード] フィールドのエントリが 3 を超えるとき。

[出荷日] Between #2-Feb-2006# And #2-Mar-2006#

マクロが実行されるフォームの [出荷日] フィールドの値が 2006 年 2 月 2 日から 2006 年 3 月 2 日の期間にあるとき。

Forms![商品リスト]![梱包単位]<5

[商品リスト] フォームの [梱包単位] フィールドの値が 5 未満のとき。

IsNull([担当者])

マクロが実行されるフォームの "担当者" フィールドが Null (値がない) のとき。この式は [担当者] Is Null と同じです。

[支社]="東京本社" And Forms![支社別売上高]![売上総数]>100

マクロが実行されるフォームの [支社] フィールドの値が東京本社で、[支社別売上高] フォームの [売上総数] フィールドの値が 100 を超えるとき。

[都道府県] In ("埼玉県", "大阪府", "福岡県") And Len([郵便番号])<>5

マクロが実行されたフォームの [都道府県] フィールドの値が埼玉県、大阪府、または福岡県で、郵便番号が 5 桁でないとき。

MsgBox("変更確認",1)=1

MsgBox 関数により表示されるダイアログ ボックスの [OK] をクリックしたとき。[キャンセル] をクリックすると、アクションは実行されません。

[一時変数]![メッセージ ボックスの結果]=2

メッセージ ボックスの結果を格納するのに使用される一時変数が 2 であるとき (vbCancel=2)。

ヒント: False の条件を入力すると、一時的にアクションがスキップされます。一時的にアクションをスキップすることによって、マクロのトラブルシューティングを行うことができます。

マクロ アクション

アクションは、マクロの基本的な構成要素です。Access では、マクロで使用できるアクションが多数用意されているため、さまざまなコマンドを実行することができます。たとえば、レポートを開く、レコードを検索する、メッセージ ボックスを表示する、フィルタをフォームやレポートに適用するなどが、よく使用されるアクションの主な例です。

ページの先頭へ

Office Access 2007 の新しいマクロ機能

以前のバージョンの Access では、よく使用される関数の多くが、VBA コードを作成しなければ、実行できませんでした。Office Access 2007 では、新しい機能とマクロ アクションが追加されているため、コードを作成する必要がなくなりました。これにより、より簡単にデータベースに機能を追加することができ、データベースのセキュリティを高めることができます。

  • 埋め込みマクロ     フォーム、レポート、またはコントロールで発生するイベントにマクロを埋め込むことができるようになりました。埋め込みマクロは、ナビゲーション ウィンドウに表示されず、埋め込み先のフォーム、レポート、またはコントロールの一部となります。マクロが埋め込まれているフォーム、レポート、またはコントロールのコピーを作成すると、コピーにもマクロが埋め込まれます。

  • セキュリティの向上     マクロ ビルダーの [すべてのアクションを表示] ボタンの画像 が強調表示されていないとき、信頼して実行できるステータスが付与されていないデータベースで使用可能なマクロ アクションと "RunCommand/コマンドの実行" 引数リストのみが表示されます。このようなアクションで作成されたマクロは、データベースが無効モードのとき (VBA の実行が許可されないとき) でも実行されます。このリストにないマクロ アクションを使用するデータベース (VBA コードが含まれるデータベース) には、信頼して実行できるステータスを明示的に付与する必要があります。

  • エラーが処理およびデバッグ   Office Access 2007には、新しいマクロ アクション、マクロエラーOnError (VBA の「のエラー」ステートメントと同様) を含むマクロの実行中にエラーが発生する場合は、特定の操作を実行することが用意されています。さらに、新しいSingleStepマクロ アクションすることができます、マクロの任意の時点でのシングル ステップ モードを入力できるように、一度に 1 つのアクションのマクロの動作を確認することができます。 

  • 一時変数   次の 3 つの新しいマクロ アクション (SetTempVarRemoveTempVar、およびRemoveAllTempVars) を使用すると、作成して、[マクロの一時変数を使用することができます。マクロの実行を制御するまたはデータを渡すにフォームまたはレポートに条件式で使用できます。 または、他の目的の値の一時的な保存場所を必要とします。VBA モジュールのデータを交換することも使用できるように、一時変数は VBA では、アクセシビリティの高いもできます。

ページの先頭へ


マクロを作成する

Office Access 2007 では、マクロまたはマクロ グループをマクロ オブジェクト (独立マクロとも呼ばれる) として使用したり、フォーム、レポート、またはコントロールのイベント プロパティに埋め込んだりすることができます。埋め込みマクロは、埋め込み先のオブジェクトまたはコントロールの一部となります。独立マクロは、ナビゲーション ウィンドウの [マクロ] の下に表示されますが、埋め込みマクロは表示されません。

マクロ ビルダの機能

独立マクロを作成する

マクロ グループを作成する

埋め込みマクロを作成する

例: レポートの "OnNoData/空データ時" イベントにマクロを埋め込む

マクロを編集する

マクロのアクションについて

マクロ ビルダの機能

マクロ ビルダは、マクロを作成および修正するのに使用します。マクロ ビルダを起動するには、次の操作を行います。

  • [作成] タブの [その] グループで、[マクロ] をクリックします。このコマンドを使用できない場合、モジュールまたはクラス モジュール] ボタンのいずれかの下にある矢印をクリックし、[マクロ] をクリックします。 ボタンの画像

    マクロ ビルダが起動されます。

マクロ ビルダを使用して、マクロで実行するアクションのリストを作成します。マクロ ビルダを初めて起動したときには、[アクション] 列、[引数] 列、[コメント] 列が表示されます。

マクロ アクションに引数が必要な場合は、[アクションの引数] の下で、マクロ アクションごとに引数を入力および編集します。[説明] ボックスにアクションまたは引数の短い説明が表示されます。ボックス内の説明を読むには、アクションまたはアクションの引数をクリックします。

次の表は、マクロ ビルダの [デザイン] タブで使用できるコマンドの一覧です。

グループ

コマンド

説明

ツール   

実行   

マクロのリストに含まれているアクションを実行します。

シングル ステップ   

シングルステップ モードを有効にします。このモードでマクロを実行すると、アクションが 1 つずつ実行されます。1 つのアクションの実行が完了すると、[マクロのシングル ステップ] ダイアログ ボックスが表示されます。次のアクションに進むには、このダイアログ ボックスの [ステップ] をクリックします。このマクロと他の実行中のマクロをすべて停止させるには、[すべてのマクロを停止] をクリックします。シングルステップ モードを無効にし、残りのアクションを停止させることなく実行するには、[継続] をクリックします。

ビルダ   

式を含めることができるアクションの引数を入力すると、このボタンが有効になります。[式ビルダ] ダイアログ ボックスを開いて式を作成するには、[ビルダ] をクリックします。

    

行の挿入   

選択した 1 つまたは複数の行の上に 1 つまたは複数の空白のアクション行を挿入します。

行の削除   

選択した 1 つまたは複数の行を削除します。

表示/非表示   

すべてのアクションを表示   

[アクション] ボックスに表示されるマクロ アクションの数を増減します。

  • マクロのアクションの長いリストを表示するには、[すべてのアクションを表示] をクリックします。マクロのアクションの長いリストが利用可能な場合は、[すべてのアクションを表示] ボタンが選択された状態で表示されます。この長いリストからマクロ アクションを選択した場合には、そのアクションを実行する前に、データベースに明示的な信頼の状態を付与する必要がある場合があります。

  • 信頼して実行できるステータスが付与されていないデータベースで使用可能なマクロ アクションのみのリストを表示するには、[すべてのアクションを表示] ボタンの選択を解除します。

    ヒント: [すべてのアクションを表示] ボタンが選択されている場合は、[すべてのアクションを表示] をクリックして選択を解除します。

    [すべてのアクションを表示] ボタンが選択されていないときは、信頼して実行できるステータスが付与されているマクロ アクションのリストが表示されます。

マクロ名   

[マクロ名] 列を表示または非表示にします。マクロ名は、マクロ グループで個々のマクロを識別する際には必須となりますが、その他の場合には省略可能です。詳細については、この記事の「マクロ グループを作成する」を参照してください。

条件   

[条件] 列の表示と非表示を切り替えます。この列に、アクションの実行を制御する式を入力します。

引数   

[引数] 列の表示と非表示を切り替えます。この列にマクロ アクションの引数が表示されるようになったため、より簡単にマクロの内容を確認できるようになりました。[引数] 列が表示されていない場合は、[アクションの引数] の下でアクションをクリックして引数を確認する必要があります。[引数] 列に引数を入力することはできません。

セクションの先頭へ

独立マクロを作成する

  • [作成] タブの [その他] グループで [マクロ] をクリックします。このコマンドを使用できない場合は、[モジュール] または [クラス モジュール] ボタンの下にある矢印をクリックして、[マクロ] をクリックします。

  • マクロ ビルダが表示されます。

  • アクションをマクロに追加します。

    1. マクロ ビルダで、[アクション] 列の最初の空白セルをクリックします。

    2. 使用するアクションを入力するか、矢印をクリックして操作の一覧から使用するアクションを選択します。

    3. アクションに引数が必要な場合は、[アクションの引数] でアクションの引数を指定します。引数のボックスをクリックすると、引数の短い説明が引数の右側に表示されます。
      ヒント

      • アクションの引数が設定されますデータベース オブジェクトの名前のアクションのオブジェクト名引数ボックスに、ナビゲーション ウィンドウからオブジェクトをドラッグして、引数を設定できます。

      • データベース オブジェクトをナビゲーション ウィンドウからマクロ ビルダの空白行にドラッグしてアクションを作成することもできます。テーブル、クエリ、フォーム、レポート、またはモジュールをマクロ ビルダにドラッグすると、そのテーブル、クエリ、フォーム、レポート、またはモジュールを開くアクションが追加されます。マクロをマクロ ビルダにドラッグすると、そのマクロを実行するアクションが追加されます。

    4. 必要に応じて、アクションに対するコメントを入力します。

  • さらに複数のアクションをマクロに追加するには、他のアクション行に移動して、手順 2. を繰り返し行います。アクションは、上の行から実行されます。

セクションの先頭へ

マクロ グループを作成する

1 つのマクロ オブジェクト内の関連する複数のマクロをグループ化する場合は、マクロ グループを作成します。

  • [作成] タブの [その他] グループで [マクロ] をクリックします。このコマンドを使用できない場合は、[モジュール] または [クラス モジュール] ボタンの下にある矢印をクリックして、[マクロ] をクリックします。

  • マクロ ビルダが表示されます。

  • 選択されていない場合は、[デザイン] タブの [表示/非表示] グループにある [マクロ名] ボタンの画像 をクリックします。[マクロ名] 列が、マクロ ビルダーに表示されます。

    注: マクロ グループでは、マクロ名は個々のマクロを識別するために必要となります。マクロ名はマクロの最初のアクションと同じ行に表示されます。マクロ名の列は、そのマクロの以降のアクションでは空白のままになります。マクロ名の列の次のマクロ名までが、そのマクロに含まれるアクションです。

  • [マクロ名] 列に、マクロ グループの最初のマクロ名を入力します。

  • 最初のマクロで実行するアクションを追加します。

    1. [アクション] 列でアクション リストを表示します。

    2. 追加するアクションをクリックします。

    3. アクションに引数が必要な場合は、[アクションの引数] でアクションの引数を指定します。引数のボックスをクリックすると、引数の短い説明が引数の右側に表示されます。
      ヒント

      • データベース オブジェクトの名前を呼び出すアクションの引数がある場合、オブジェクトをナビゲーション ウィンドウからアクションの "Object Name/オブジェクト名" 引数のボックスにドラッグすると、自動的に引数とそれに対応するオブジェクトの種類の引数が設定されます。

      • データベース オブジェクトをナビゲーション ウィンドウからマクロ ビルダの空白行にドラッグしてアクションを作成することもできます。テーブル、クエリ、フォーム、レポート、またはモジュールをマクロ ビルダにドラッグすると、そのテーブル、クエリ、フォーム、レポート、またはモジュールを開くアクションが追加されます。マクロをマクロ ビルダにドラッグすると、そのマクロを実行するアクションが追加されます。

    4. 必要に応じて、アクションに対するコメントを入力します。

  • 次の空白行の [マクロ名] 列に、マクロ グループの次のマクロ名を入力します。

  • そのマクロで実行されるアクションを追加します。

  • マクロ グループのマクロごとに、手順 5. ~ 6. を繰り返します。

注: 

  • マクロ グループをナビゲーション ウィンドウでダブルクリックするか、または [デザイン] タブの [ツール] グループで [実行] ボタンの画像 をクリックして実行すると、最初のマクロのみが実行され、次のマクロに到達した時点で実行が停止します。

  • マクロ グループを保存するときに、そのマクロ グループの名前を指定します。指定した名前は、ナビゲーション ウィンドウの [マクロ] の下に表示されます。マクロ グループ内の特定のマクロを参照するには、次の構文を使用します。

    <マクロ グループ名.マクロ名>

    たとえば、Buttons.Products は、ボタンの [マクロ] グループで、製品のマクロを参照します。RunMacroアクションでは、[マクロ名] 引数リストなどのマクロの一覧で商品の製品のマクロが表示されます。

セクションの先頭へ

埋め込みマクロを作成する

埋め込みマクロは、独立マクロとは異なり、フォーム、レポート、またはコントロールのイベント プロパティに格納されます。埋め込みマクロは、ナビゲーション ウィンドウの [マクロ] にオブジェクトとして表示されません。したがって、フォームやレポートに埋め込まれたマクロを含むマクロ オブジェクトを個別に追跡する必要がないため、より簡単にデータベースを管理することができます。以下の手順に従って、埋め込みマクロを作成します。

  1. デザイン ビューまたはレイアウト ビューで、マクロを埋め込むフォームまたはレポートを開きます。フォームまたはレポートを開くには、ナビゲーション ウィンドウでフォームまたはレポートを右クリックし、[デザイン ビュー] ボタン イメージ または [レイアウト ビュー] ボタンの画像 をクリックします。

  2. プロパティ シートが表示されていない場合は、F4 キーを押して表示します。

  3. マクロを埋め込むイベント プロパティが表示されているコントロールまたはセクションをクリックします。

    フォーム全体またはレポート全体を選択するには、プロパティ シート最上部にあるドロップダウン リストの [レポート] をクリックします。

  4. プロパティ シートで、[イベント] タブをクリックします。

  5. マクロを埋め込むイベント プロパティをクリックし、そのボックスの横にある [ビルダー] ボタン をクリックします。

  6. [ビルダの選択] ダイアログ ボックスで [マクロ ビルダ] をクリックし、[OK] をクリックします。

  7. マクロ ビルダで、[アクション] 列の最初の行をクリックします。

  8. [アクション] ボックスの一覧の目的のアクションをクリックします。

  9. 必要に応じて [アクションの引数] ウィンドウに引数を入力し、次のアクション行に移動します。

  10. マクロが完成するまで、手順 8. ~ 9. を繰り返します。

  11. ボタン イメージ (上書き保存) をクリックし、 ボタン イメージ (閉じる) をクリックします。

イベントが発生するたびにマクロが実行されます。

注: Access では、マクロ グループとして埋め込みマクロを作成することができます。ただし、イベントが発生したとき、最初のマクロ グループでのみが実行されます。埋め込みマクロ内 (たとえば、 OnErrorアクションによって) 呼び出される場合を除き、後続のマクロは無視されます。

セクションの先頭へ

例: レポートの "OnNoData/空データ時" イベントにマクロを埋め込む

レポートのデータ ソースにレコードが含まれていないときにレポートを実行すると、レポートは空白のページ (データが含まれていないページ) として表示されます。その代わりに、メッセージ ボックスを表示し、レポートが表示されないようにするとします。このような場合には、埋め込みマクロを使用するのが最適です。

  1. レポートをデザイン ビューまたはレイアウト ビューで開きます。

  2. プロパティ シートが表示されていない場合は、F4 キーを押して表示します。

  3. プロパティ シートで、[イベント] タブをクリックします。

  4. [空データ時] をクリックします。

  5. [ビルダー] ボタン をクリックします。

  6. [ビルダの選択] ダイアログ ボックスで、[マクロ ビルダ] をクリックし、[OK] をクリックします。

  7. 次の表を参考にして、アクションと引数を入力します。

アクション

引数

"MsgBox/メッセージボックス"

No Records Found./レコードがありません、Yes/はい、Information/情報、No Data/データなし

"CancelEvent/イベントのキャンセル"

(引数なし)

  1. この表では、引数は [引数] 列での表示と同じように表示されています。実際には、引数は、次の表に示すとおり、[アクションの引数] で入力します。

アクションの引数

Message/メッセージ

No Records Found./レコードがありません。

Beep/警告音

Yes/はい

Type/メッセージの種類

Information/情報

Title/メッセージ タイトル

No Data/データなし

  1. [閉じる] をクリックします。

    マクロ ビルダが終了し、"OnNoData/空データ時" イベントにより [埋め込みマクロ] が表示されます。

  2. レポートを保存して閉じます。

次にレポートを実行したときにレコードがなければ、メッセージ ボックスが表示されます。メッセージ ボックスの [OK] をクリックすると、空白のページが表示されることなくレポートがキャンセルされます。

セクションの先頭へ

マクロを編集する

  • アクション行を挿入する     挿入するアクション行の 1 行下になる行をクリックし、[デザイン] タブの [] で ルックアップ テーブルに行を挿入するボタンの画像 (行の挿入) をクリックします。

  • アクション行を削除する     削除するアクション行をクリックし、[デザイン] タブの [] で ボタンの画像 (行の削除) をクリックします。

  • アクション行を移動する     アクション名の左側にある行セレクタをクリックしてアクションを選択します。行セレクタをドラッグしてアクションを別の位置へ移動します。

ページの先頭へ

マクロ アクションの詳細

マクロ ビルダで作業をしているときにアクションまたは引数をクリックすると、その説明がマクロ ビルダ ウィンドウの右下隅にあるボックスに表示されます。また、それぞれのマクロ アクションには、ヘルプ トピックが関連付けられています。アクションのヘルプ トピックを表示するには、アクション リストでアクションをクリックし、F1 キーを押します。

ページの先頭へ

マクロを実行する

独立マクロは、直接 (ナビゲーション ウィンドウからなど)、マクロ グループで、別のマクロから、VBA モジュールから、またはフォーム、レポート、コントロールで発生したイベントに対する応答として、実行することができます。フォーム、レポート、またはコントロールに埋め込まれているマクロは、デザイン ビューに表示されているときは、[デザイン] タブの [実行] ボタンの画像 をクリックすると実行できますが、それ以外の場合は、そのマクロに関連付けられているイベントが発生した場合にのみ実行されます。

マクロを直接実行する

マクロを直接実行するには、次のいずれかの操作を行います。

  • ナビゲーション ウィンドウでマクロ名をダブルクリックします。

  • [データベース ツール] タブの [マクロ] で ボタンの画像 (マクロの実行) をクリックし、[マクロ名] ボックスの一覧のマクロをクリックします。次に、[OK] をクリックします。

  • デザイン ビューにマクロが開いている場合は、[デザイン] タブの [ツール] で [実行] ボタンの画像 をクリックします。デザイン ビューでマクロを開くには、ナビゲーション ウィンドウでマクロを右クリックし、[デザイン ビュー] ボタン イメージ をクリックします。

マクロ グループ内のマクロを実行する

マクロ グループのマクロを実行するには、次のいずれかの操作を行います。

  • [データベース ツール] タブの [マクロ] で ボタンの画像 (マクロの実行) をクリックし、[マクロ名] ボックスの一覧のマクロをクリックします。

    Access には、各マクロ グループで、マクロ名の形式でのマクロのエントリが含まれています。

  • [OK] をクリックします。

  • フォームやレポートのイベント プロパティ設定として、または、名前のマクロ アクションの引数として、 RunMacroマクロを指定します。次の構文を使用して、[マクロ] を参照してください。

    "マクロ グループ名.マクロ名"

    たとえば、次のようにイベント プロパティが設定されていると、[フォーム パネル ボタン] マクロ グループの [商品区分] マクロが実行されます。

    フォーム パネル ボタン.商品区分

  • VBA プロシージャ内でマクロ グループで、 DoCmdオブジェクトのRunMacroメソッドを使用して、マクロを参照する前に示した構文を使用してマクロを実行します。

別のマクロまたは VBA プロシージャからマクロを実行する

マクロまたはプロシージャにアクションを追加します。

  • マクロにアクションを追加するには、空白のアクション行で、アクションのリストでRunMacroをクリックし、マクロ名引数を実行するマクロの名前を設定します。

  • VBA プロシージャには、このアクションを追加するにする手順については、 DoCmdオブジェクトのRunMacroメソッドを追加し、実行するマクロの名前を指定します。たとえば、 RunMacroメソッドの次のインスタンスには、個人用マクロという名前のマクロが実行されます。

DoCmd.RunMacro "My Macro"

フォーム、レポート、またはコントロールのイベントへの応答としてマクロを実行する

フォーム、レポート、およびコントロールのイベント プロパティにマクロを直接埋め込むことができるようになりましたが、以前のバージョンの Access で行われていたように、独立マクロを作成してからイベントに関連付けることもできます。

  1. 独立マクロを作成したら、デザイン ビューまたはレイアウト ビューで、フォームとレポートのいずれかを開きます。

  2. フォームまたはレポートのプロパティ シートを表示するか、フォームまたはレポートのセクションまたはコントロールのプロパティ シートを表示します。

  3. [イベント] タブをクリックします。

  4. マクロを実行するイベントのイベントのプロパティ] をクリックします。たとえば、変更イベントにマクロを開始するには、プロパティの[変更をクリックします。

  5. ドロップダウン リストで、独立マクロの名前をクリックします。

  6. フォームまたはレポートを保存します。

ページの先頭へ

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

この情報は役に立ちましたか?

ありがとうございます。その他のフィードバックはありませんか?

改善内容をお聞かせください

ご意見をいただきありがとうございます。

×