Access 2007 マクロの基本

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

この記事の内容


マクロとは

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

マクロは、実行するアクション (アクション: マクロを構成する基本単位。アクションはそれぞれ独立したコマンドであり、複数のアクションを連続して実行することで一連の作業を自動化できます。ほかのマクロ言語では、コマンドと言うこともあります。)のリストを作成して記述する簡略なプログラミング言語と考えることができます。マクロを作成するとき、ドロップダウン リストからアクションを選択し、それぞれのアクションに必要な情報を提供します。マクロにより、Visual Basic for Applications (VBA) (Visual Basic for Applications (VBA): Microsoft Windows ベースのアプリケーションの作成に使用される Visual Basic のマクロ言語バージョン。いくつかの Microsoft プログラムで使用できます。) モジュールでコードを作成することなく、フォーム、レポート、およびコントロールに機能を追加することができます。マクロは VBA で使用可能なコマンドのサブセットとして機能し、一般的に VBA コードよりもマクロの方が簡単に作成できます。

たとえば、データ入力フォームから直接レポートを表示できるようにするとします。その場合、フォームにボタンを追加してから、レポートを表示するマクロを作成します。マクロは、独立マクロ (データベース内の独立したオブジェクト) としてボタンの "OnClick/クリック時" イベントに関連付けることもできれば、ボタンの "OnClick/クリック時" イベントそのものに埋め込むこともできます (これは Office Access 2007 の新機能です)。いずれの方法でも、ボタンをクリックすると、マクロが実行され、レポートが表示されます。

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

マクロ ビルダ

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

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

ページの先頭へ ページの先頭へ

マクロの構成

通常、マクロとは、独立マクロ オブジェクト (ナビゲーション ウィンドウの [マクロ] に表示されるオブジェクト) のことを意味しますが、1 つのマクロに複数のマクロが含まれることもあります。これは、"マクロ グループ" と呼ばれます。マクロ グループは、ナビゲーション ウィンドウでは単一のマクロ オブジェクトとして表示されますが、実際には、マクロ グループは複数のマクロで構成されています。これらのマクロを独立したマクロ オブジェクトとして作成することも可能ですが、複数の関連したマクロを 1 つのマクロ オブジェクトにグループ化した方が通常は効果的です。[マクロ名] 列の名前でそれぞれのマクロが識別されます。

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

マクロ名

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

引数

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

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

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

条件

条件とは、アクションを起動する基準を指定するもので、条件が満たされなければ、アクションは実行されません。True/False または Yes/No として評価されるすべての (式: 算術演算子または論理的演算子、定数、リテラル値、関数、フィールド名、コントロール、およびプロパティの組み合わせ。これにより、1 つの値を評価します。式は、計算、文字列の処理、データのテストなどに使用できます。)を使用することができます。式が 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 (Null: 存在しないデータまたは未知のデータを表す値。フィールドに入力したり、式やクエリで使用したりできます。Visual Basic の Null キーワードは Null 値を表します。主キー フィールドなど、Null 値を格納できないフィールドもあります。) 値) とき。この式は [担当者] IsNull と同じです。
[支社]="東京本社" 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 では、マクロまたはマクロ グループをマクロ オブジェクト (独立マクロとも呼ばれる) として使用したり、フォーム、レポート、またはコントロールのイベント プロパティに埋め込んだりすることができます。埋め込みマクロは、埋め込み先のオブジェクトまたはコントロールの一部となります。独立マクロは、ナビゲーション ウィンドウの [マクロ] の下に表示されますが、埋め込みマクロは表示されません。

マクロ ビルダの機能

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

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

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

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

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

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

グループ コマンド 説明
ツール     実行     マクロのリストに含まれているアクションを実行します。
シングル ステップ     シングルステップ モードを有効にします。このモードでマクロを実行すると、アクションが 1 つずつ実行されます。1 つのアクションの実行が完了すると、[マクロのシングル ステップ] ダイアログ ボックスが表示されます。次のアクションに進むには、このダイアログ ボックスの [ステップ] をクリックします。このマクロと他の実行中のマクロをすべて停止させるには、[すべてのマクロを停止] をクリックします。シングルステップ モードを無効にし、残りのアクションを停止させることなく実行するには、[継続] をクリックします。
ビルダ     式を含めることができるアクションの引数を入力すると、このボタンが有効になります。[式ビルダ] ダイアログ ボックスを開いて式を作成するには、[ビルダ] をクリックします。
     行の挿入     選択した 1 つまたは複数の行の上に 1 つまたは複数の空白のアクション行を挿入します。
行の削除     選択した 1 つまたは複数の行を削除します。
表示/非表示     すべてのアクションを表示    

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

  • すべてのマクロ アクションのリストを表示するには、[すべてのアクションを表示] をクリックします。すべてのマクロ アクションのリストが表示されているとき、[すべてのアクションを表示] ボタンは強調表示されます。このリストからマクロ アクションを選択する場合、信頼して実行できるステータスをデータベースに明示的に付与しなければ、アクションが実行されない場合があります。
  • 信頼して実行できるステータスが付与されていないデータベースで使用可能なマクロ アクションのみのリストを表示するには、[すべてのアクションを表示] ボタンの選択を解除します。

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

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

マクロ名     [マクロ名] 列を表示または非表示にします。マクロ名は、マクロ グループで個々のマクロを識別する際には必須となりますが、その他の場合には省略可能です。詳細については、この記事の「マクロ グループを作成する」を参照してください。
条件     [条件] 列の表示と非表示を切り替えます。この列に、アクションの実行を制御する式を入力します。
引数     [引数] 列の表示と非表示を切り替えます。この列にマクロ アクションの引数が表示されるようになったため、より簡単にマクロの内容を確認できるようになりました。[引数] 列が表示されていない場合は、[アクションの引数] の下でアクションをクリックして引数を確認する必要があります。[引数] 列に引数を入力することはできません。

独立マクロを作成する

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

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

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

表示ヒント


  • 必要に応じて、アクションに対するコメントを入力します。
  1. さらに複数のアクションをマクロに追加するには、他のアクション行 (アクション行: [マクロ] オブジェクト タブの上部に表示される行。アクション行には、特定のマクロまたはマクロ グループに関連付けるマクロ名、アクション、引数、およびコメントを入力します。)に移動して、手順 2. を繰り返し行います。アクションは、上の行から実行されます。

ページの先頭へ ページの先頭へ

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

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

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

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

  1. [デザイン] タブの [表示/非表示] グループで ボタン イメージ (マクロ名) をクリックします (このボタンがまだ表示されていない場合)。マクロ ビルダに [マクロ名] 列が表示されます。

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

  1. [マクロ名] 列に、マクロ グループの最初のマクロ名を入力します。
  2. 最初のマクロで実行されるアクションを追加します。
    • [アクション] 列でアクション リストを表示します。
    • 追加するアクションをクリックします。
    • アクションに引数が必要な場合は、[アクションの引数] でアクションの引数を指定します。引数のボックスをクリックすると、引数の短い説明が引数の右側に表示されます。

表示ヒント

  • データベース オブジェクトの名前を呼び出すアクションの引数がある場合、オブジェクトをナビゲーション ウィンドウからアクションの "Object Name/オブジェクト名" 引数のボックスにドラッグすると、自動的に引数とそれに対応するオブジェクトの種類の引数が設定されます。
  • データベース オブジェクトをナビゲーション ウィンドウからマクロ ビルダの空白行にドラッグしてアクションを作成することもできます。テーブル、クエリ、フォーム、レポート、またはモジュールをマクロ ビルダにドラッグすると、そのテーブル、クエリ、フォーム、レポート、またはモジュールを開くアクションが追加されます。マクロをマクロ ビルダにドラッグすると、そのマクロを実行するアクションが追加されます。

  • 必要に応じて、アクションに対するコメントを入力します。
  1. 次の空白行の [マクロ名] 列に、マクロ グループの次のマクロ名を入力します。
  2. そのマクロで実行されるアクションを追加します。
  3. マクロ グループのマクロごとに、手順 5. ~ 6. を繰り返します。

 メモ 

  • マクロ グループをナビゲーション ウィンドウでダブルクリックするか、または [デザイン] タブの [ツール] で ボタン イメージ (実行) をクリックして実行すると、最初のマクロのみが実行され、後続のマクロは実行されません。
  • マクロ グループを保存するときに、そのマクロ グループの名前を指定します。指定した名前は、ナビゲーション ウィンドウの [マクロ] の下に表示されます。マクロ グループ内の特定のマクロを参照するには、次の構文を使用します。

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

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

ページの先頭へ ページの先頭へ

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

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

 メモ   [データベース ツール] タブの [マクロ] で ボタン イメージ (マクロを Visual Basic に変換) をクリックしても、埋め込みマクロは Visual Basic for Applications (VBA) に変換できません。マクロを VBA コードに変換する場合は、埋め込みマクロの代わりに独立マクロを作成することをお勧めします。次に、[マクロを Visual Basic に変換] ツールを使用して、独立マクロを VBA に変換できます。

  1. デザイン ビューまたはレイアウト ビューで、マクロを埋め込むフォームまたはレポートを開きます。フォームまたはレポートを開くには、ナビゲーション ウィンドウでフォームまたはレポートを右クリックし、ボタン イメージ (デザイン ビュー) または ボタン イメージ (レイアウト ビュー) をクリックします。
  2. プロパティ シートが表示されていない場合は、F4 キーを押して表示します。
  3. マクロを埋め込むイベント プロパティが表示されているコントロールまたはセクションをクリックします。

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

  1. プロパティ シートで、[イベント] タブをクリックします。
  2. マクロを埋め込むイベント プロパティをクリックし、そのボックスの横にある ボタン イメージ をクリックします。
  3. [ビルダの選択] ダイアログ ボックスで、[マクロ ビルダ] をクリックし、[OK] をクリックします。
  4. マクロ ビルダで、[アクション] 列の最初の行をクリックします。
  5. [アクション] ボックスの一覧の目的のアクションをクリックします。
  6. 必要に応じて [アクションの引数] ウィンドウに引数を入力し、次のアクション行に移動します。
  7. マクロが完成するまで、手順 8. ~ 9. を繰り返します。
  8. ボタン イメージ (上書き保存) をクリックし、ボタン イメージ (閉じる) をクリックします。

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

 メモ   マクロ グループを埋め込みマクロとして作成することは可能です。ただし、イベントが発生したときに実行されるのは、マクロ グループの最初のマクロのみです。後続のマクロは、埋め込みマクロ内から呼び出されない限り ("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/空データ時" イベントにより [埋め込みマクロ] が表示されます。

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

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

ページの先頭へ ページの先頭へ

マクロを編集する

  • アクション行を挿入する     挿入するアクション行の 1 行下になる行をクリックし、[デザイン] タブの [] で ボタン イメージ (行の挿入) をクリックします。
  • アクション行を削除する     削除するアクション行をクリックし、[デザイン] タブの [] で ボタン イメージ (行の削除) をクリックします。
  • アクション行を移動する     アクション名の左側にある行セレクタをクリックしてアクションを選択します。行セレクタをドラッグしてアクションを別の位置へ移動します。

ページの先頭へ ページの先頭へ

マクロ アクションの詳細

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

ページの先頭へ ページの先頭へ

マクロを実行する

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

マクロを直接実行する

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

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

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

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

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

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

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

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

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

  • 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. フォームまたはレポートを保存します。

ページの先頭へ ページの先頭へ

 
 
適用対象:
Access 2007