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

引数

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

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

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 の "OnError/エラー時" ステートメントに相当) や "ClearMacroError/マクロ エラーのクリア" などの新しいマクロ アクションが追加されているため、マクロの実行中にエラーが発生した場合に特定のアクションが実行されるよう設定することができます。さらに、新しく追加された "SingleStep/シングルステップ" マクロ アクションにより、マクロの実行中にシングルステップ モードに切り替えて、マクロの動作をアクションごとに観察することができます。

  • 一時変数     "SetTempVar/一時変数の設定"、"RemoveTempVar/一時変数の削除"、"RemoveAllTempVars/すべての一時変数の削除" の新しく追加された 3 つのマクロ アクションにより、マクロで一時変数を作成および使用することができます。これらのマクロ アクションを条件式で使用して、マクロの実行を制御したり、レポートやフォームとの間でデータを交換したりするなど、値の一時的な格納場所を必要とするあらゆる処理を行うことができます。一時変数は、VBA にも対応しているため、VBA モジュールとの間でデータを交換するのに使用することもできます。

ページの先頭へ


マクロを作成する

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

マクロ ビルダーの機能

独立マクロを作成する

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

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

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

マクロを編集する

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

マクロ ビルダーの機能

マクロ ビルダーを使用して、マクロの作成と修正を行います。マクロ ビルダーを開くには、次の操作を行います。

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

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

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

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

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

グループ

コマンド

説明

ツール   

実行   

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

シングル ステップ   

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

ビルダー   

入力したアクションの引数に式を格納できる場合に、このボタンが有効になります。[ビルダー] をクリックして、[式ビルダー] ダイアログ ボックスを開きます。このダイアログ ボックスを使用して、式を作成できます。

   

行の挿入   

空白のアクション行 (1 つ以上) を、選んだ行 (1 つ以上) の上に挿入します。

行の削除   

選択したアクション行 (1 つまたは複数) を削除します。

表示/非表示   

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

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

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

  • マクロ アクションの長いリストを、信頼されていないデータベースで使用できるマクロ アクションだけを表示する短いリストに切り替えるには、[すべてのアクションを表示] ボタンが選択されていないことを確認します。

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

    [すべてのアクションを表示] が選択されていない場合は、信頼されたマクロ アクションの短いリストが利用可能となっています。

マクロ名   

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

条件   

[条件] 列を表示または非表示にします。この列を使用して、アクションがいつ実行されるかを制御する式を入力します。

引数   

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

セクションの先頭へ

独立マクロを作成する

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

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

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

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

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

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

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

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

    4. アクションに関するコメントを入力することもできます。

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

セクションの先頭へ

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

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

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

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

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

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

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

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

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

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

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

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

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

    4. アクションに関するコメントを入力することもできます。

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

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

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

注: 

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

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

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

    たとえば "ボタン数.商品数" は、[ボタン数] マクロ グループ内の [商品数] マクロを参照します。また、"RunMacro/マクロの実行" アクションの "Macro Name/マクロ名" 引数リストなどのマクロのリストでは、[商品数] マクロは "ボタン数.商品数" という形式で表示されます。

セクションの先頭へ

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

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

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

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

  3. マクロの埋め込み先となるイベント プロパティを含むコントロールまたはセクションをクリックします。

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

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

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

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

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

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

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

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

  11. [保存] ボタン イメージ をクリックし、[閉じる] ボタン イメージ をクリックします。

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

注: マクロ グループを埋め込みマクロとして作成することができます。ただし、イベントが発生したときに実行されるのは、マクロ グループの最初のマクロのみです。後続のマクロは、埋め込みマクロ内から呼び出されない限り ("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] をクリックします。

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

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

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

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

    このリストでは、各マクロ グループの各マクロは、"マクロ グループ名.マクロ名" という形式で表示されます。

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

  • マクロをフォームまたはレポートのイベント プロパティ設定として指定するか、"RunMacro/マクロの実行" アクションの "MacroName/マクロ名" 引数として指定します。

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

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

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

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

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

マクロまたはプロシージャに [RunMacro/マクロの実行] アクションを追加します。

  • マクロに [RunMacro/マクロの実行] アクションを追加するには、空白のアクション行のアクション リストから [RunMacro/マクロの実行] アクションを選び、[Macro Name/マクロ名] 引数を実行されるマクロの名前に設定します。

  • VBA プロシージャに "RunMacro/マクロの実行" アクションを追加するには、プロシージャに DoCmd オブジェクトの RunMacro メソッドを追加して、実行するマクロの名前を指定します。たとえば、次の RunMacro メソッドのインスタンスは [My Macro] マクロを実行します。

DoCmd.RunMacro "My Macro"

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

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

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

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

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

  4. マクロを実行するイベントのイベント プロパティをクリックします。たとえば、"Change" イベントでマクロを起動させる場合は、"OnChange/変更時" プロパティをクリックします。

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

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

ページの先頭へ

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

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

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

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×