スキップしてメイン コンテンツへ

マクロを使用してカスタム メニューおよびショートカット メニューを作成する

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。 このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。 私たちの目的は、このコンテンツがお客様の役に立つようにすることです。 お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。 簡単に参照できるように、こちらに英語の記事があります。

Access のマクロを使用して、フォーム、レポート、または個々 のコントロールを右クリックしたときに表示されるカスタム ショートカット メニューを作成することができます。 フォームやレポートのリボンのユーザー設定のメニューに表示されるを作成することもできます。

マクロを使ってメニューを作成するには、次の 3 つの主な手順を実行します。

  1. メニュー コマンドが含まれる submacros では、オブジェクトのマクロを作成します。

  2. メニュー自体を作成する別のマクロ オブジェクトを作成します。

  3. 全体のサイズ] メニューの [コントロール、フォーム、レポート、または、データベースを添付します。

次のセクションでは、次の手順の詳細を説明します。

注: Access 2007 を使用していますか。 必要な場合は、 Access 2007 でカスタム ショートカット メニューを作成する] セクションまで下に進んでください。

ヒント: Visual Basic for Applications (VBA) コードのアクセスでカスタム ショートカット メニューを作成する方法について説明する場合は、フォーム、フォーム コントロール、またはレポートのショートカット メニューを作成する」を参照してください。

手順 1: メニュー コマンドが含まれる submacros とマクロ オブジェクトを作成します。

この手順では、submacros、各サブマクロをショートカット メニューの [別のコマンドになりますオブジェクトのマクロを作成します。

サブマクロとは何ですか。

マクロ アクションのセットを定義するのにマクロ オブジェクト内のサブマクロを使用することができます。 Submacros マクロ オブジェクト内では、さまざまなコントロールとオブジェクトのイベントを個別に呼び出すことができます。 マクロ オブジェクト内の個々 の submacros では、一意の名前がある各と 1 つまたは複数のマクロ アクションを含めることができます。

  1. 作成タブのマクロとコードグループで、マクロをクリックします。

  2. カスタム ショートカット メニューに表示するコマンドごとにします。

    1. マクロ デザイン ウィンドウにサブマクロ マクロ ステートメントを追加し、サブマクロ (たとえば、「印刷」または「更新」) は、ショートカット メニューを表示する名前を付けます。

      ヒント: アクセス キーを作成するには、キーボードを使用するには、コマンドを選択できるようにするには、コマンド名 (たとえば、"&Refresh") で、アクセス キーを文字の前にアンパサンド (&) を入力します。 [メニューで、この手紙が下線付きで表示します。

    2. サブマクロ、ショートカット メニューのをクリックしたときに実行するには、最初のアクションを選択します。

    3. このコマンドを選択するときに実行するその他のアクションがある場合は、同じサブマクロ内の別のマクロ アクションとして追加します。

  3. 保存して、 mcrShortcutMenuCommandsなどのオブジェクトのマクロの名前を付けます。

    次の図は、ユーザー設定のメニューまたはショートカット メニューの 3 つの submacros とマクロ オブジェクトの例を示します。

    次の 3 つのサブマクロ ステートメントを使用してアクセス権のスクリーン ショット マクロ デザイン ウィンドウ。

手順 2: 2 番目のメニューを作成するマクロ オブジェクトを作成します。

ここでは、冗長ですが、手順 1 で作成したマクロ オブジェクトから、ショートカット メニューを作成するには、2 番目マクロ オブジェクトAddMenu マクロ アクションを含むを作成する必要があります。 このマクロ アクションは、「メニュー マクロ」と呼ばれます。

  1. 作成タブのマクロとコードグループで、マクロをクリックします。

  2. マクロ デザイン ウィンドウの[新しいアクションを追加するコンボ ボックスの中で、[メニューの追加] を選びます。

  3. AddMenuマクロ アクションのメニュー名引数のボックスで、[メニュー (たとえば、「フォーム コマンド」) の名前を入力します。 この引数は必須ではありませんが、かどうかは、手順 3 で追加する場合、メニュー (フォームまたはレポートの[アドイン] タブ) などのリボン タブにはお勧めします。 手順 3 で、ショートカット メニューの [名前を付けて、[メニューを追加する場合は、メニュー名引数は無視されます。

  4. メニュー マクロ名引数ボックスで、手順 1 で作成したマクロ オブジェクトの名前を入力します。

  5. 保存して、この 2 番目のマクロ オブジェクトmcrAddShortcutMenuなどの名前を付けます。

    次の図は、手順 1 で設計しました] メニューを作成するメニュー マクロ オブジェクトの例を示します。

    AddMenu マクロ アクションを Access マクロ オブジェクトのスクリーン ショット。

手順 3: コントロール、フォーム、レポート、またはデータベースに、[メニューを添付します。

によっては、任意の位置を表示] メニューには、次の手順のいずれかを使用します。

フォームまたはレポートの [アドイン] タブに、メニューを追加します。

特定のフォームまたはレポートの [アドイン] タブに表示するメニューを追加する場合は、この手順を使用します。

  1. ナビゲーション ウィンドウでは、フォームまたはレポートは、[メニューを表示する場所を右クリックし、[デザイン ビュー] をクリックします。

  2. [デザイン] タブの [ツール] で [プロパティ シート] をクリックします。

  3. プロパティ シート] 作業ウィンドウの上部にあるボックスの一覧からフォームまたはレポートを選択して、オブジェクト全体を選択します。

  4. [その他のタブの [プロパティ シートで、メニュー バーのプロパティ ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロ オブジェクトの名前を入力します。

  5. フォームまたはレポートの変更内容を保存します。

    次にフォームまたはレポートを開いたとき、リボンの[アドイン] タブが表示されます。 次の図に示すように、メニューを表示する] タブをクリックします。

    Access のリボンの [アドインのスクリーン ショット

    ユーザー設定のタブを追加するか、既定のタブを非表示にするなど、リボンのカスタマイズ方法の詳細については、 Access でユーザー設定のリボンを作成する」を参照してください。

フォーム、レポート、またはコントロールのショートカット メニューの [名前を付けて、[メニューを追加します。

特定のフォーム、レポート、またはコントロールを右クリックしたときに表示されるメニューを追加する場合は、この手順を使用します。

  1. ナビゲーション ウィンドウでは、フォームまたはレポートを表示するには、ショートカット メニューを格納するを右クリックし、[デザイン ビュー] をクリックします。

  2. [デザイン] タブの [ツール] で [プロパティ シート] をクリックします。

  3. ショートカット メニューを添付するコントロールまたはオブジェクトを選択します。

    全体のオブジェクトを選択するには、プロパティ シート] 作業ウィンドウの上部にあるボックスの一覧からフォームまたはレポートを選択します。

  4. [その他のタブの [プロパティ シートで、ショートカット メニュー バーのプロパティ ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロ オブジェクトの名前を入力します。

  5. 確認、ショートカット メニューの [プロパティがはい

  6. フォームまたはレポートの変更内容を保存します。

    次回、フォームまたはレポートを開く、フォーム、レポート、またはコントロールを右クリックして、次の図に示すように、関連するコマンドを使用して、ショートカット メニューの [が表示されます。

    Access フォーム上のショートカット メニューのスクリーン ショット

グローバル ショートカット メニューと、メニューに追加します。

この手順では、すべての現在のデータベースの既定のショートカット メニューに置き換えます。 特定のフォーム、レポート、またはコントロールに添付するカスタム ショートカット メニューには影響しません。

  1. [ファイル] メニューの [オプション] をクリックします。

  2. [Access のオプション] ダイアログ ボックスで [カレント データベース] をクリックします。

  3. [リボンとツールバーのオプション] で、ショートカット メニュー バー]ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロの名前を入力します。

  4. Access のオプション] ダイアログ ボックスで、変更内容を保存するのには、 [ok]をクリックします。

  5. [有効になるまでの変更については、データベースを閉じてから。

カスタム ショートカット メニューに関連付けられているが、オブジェクトに対して既定のショートカット メニューを置き換えます。 これらのメニューで使用する Access コマンドを保持する場合は、コマンドのメニューにするマクロのオブジェクトにRunCommandマクロ アクションを使用します。

コントロールに関連付けられているカスタム ショートカット メニューには、データベースで定義されているその他のユーザー設定のショートカット メニューが置き換えられます。 フォームまたはレポートに接続されているカスタム ショートカット メニューには、ユーザー設定のグローバル ショートカット メニューをよりも優先されます。

フォームまたはレポートのまたはデータベースのメニュー マクロを指定するとは、フォーム、レポート、またはデータベースを開くたびに、このメニュー マクロが実行されます。 データベースが開いているメニュー マクロ オブジェクトまたはオブジェクト、フォーム、レポート、コマンドを定義するマクロを変更する、または、する必要がありますフォーム、レポート、またはデータベースを閉じて、変更を確認します。

コマンドのショートカット メニューの一覧で、サブメニューを作成するには、次の次の図に示すように、サブメニューのコマンドを含むオブジェクトを別のマクロを作成するのには、手順 1 を実行します。

2 つの submacros の Access でマクロのスクリーン ショット

次に、上位レベルの] メニューの [オブジェクトのコマンドを定義するには、もう一度手順 1 に従います。 AddMenuマクロ アクションを使用して、上位レベルのマクロ オブジェクト内のアイテムとしてサブメニューを追加します。 次の図は、サブメニューを含むメニュー マクロ オブジェクトを示します。 3 番目のサブマクロこのマクロ オブジェクトの例では、(mcrShortcutSubMenuCommands)にエクスポートする]サブメニューを作成します。

4 つの submacros で Access マクロのスクリーン ショット

次の図は、完成したショートカット メニューのサブメニューを含むを示しています。

サブメニューのショートカット メニューのスクリーン ショット

メニューのレベルごとに、マクロ オブジェクトにAddMenuマクロ アクションを使用して、複数レベルのサブメニューを作成できます。 空白行より高いレベルのメニューとサブメニューが表示されますそれ以外の場合、各メニューの追加アクションのメニュー名引数の値を指定してください。

Elseそれ/If/パーツを使ってマクロ式の条件は、トップレベルのメニュー マクロ オブジェクトのみでサポートされます。 つまり、最上位レベルのメニューについてのみが、かどうかは、特定のメニューまたはショートカット メニューが表示されます] を確認する] メニューの [マクロのオブジェクトに条件式を使用することができます。 または、メニューのコマンドやサブメニューを非表示に条件式を使うことはできません。 カスタム ショートカット メニューまたはグローバル ショートカット メニューを表示または非表示に条件式を使用することもできます。

必要に応じて、手順 2 で作成したメニュー マクロには、マクロのオブジェクトの一部ができます。 たとえば、複数のオブジェクトまたはコントロールのいくつかのショートカット メニューを使っている場合は、すべてのメニュー マクロを含むオブジェクトを 1 つのマクロを作成できます。 各サブマクロの一意の名前を確認します。 手順 3 で、次の表記法を使用してマクロを参照: MacroObjectName.SubmacroNameします。 たとえば、 mcrAddShortcutMenus.AddMenu2です。

ページの先頭へ

Access 2007 でカスタム ショートカット メニューを作成します。

マクロ デザイン ウィンドウと比較して Access 2007 の相違点以降のバージョンは、Access 2007 を使用している場合に内容を確認するには、次のセクションを展開します。

この手順では、各マクロをショートカット メニューの [別のコマンドになりますマクロ グループを作成します。

マクロ グループとは何ですか。

マクロ グループは、2 つ以上の独立したマクロを含む 1 つのマクロ オブジェクトです。 [マクロ名] 列で各マクロの名前を入力して、個々 のマクロが識別されます。 次の図では、 Macro3は、マクロ グループです。 NotFoundMsgFoundMsgは、次の 2 つのマクロ アクションで構成されている各マクロ グループ内の個々 のマクロです。

マクロ グループの例

注: 既定では、[マクロ名] 列が非表示にします。 [デザイン] タブの [表示/非表示] で、[マクロ名] 列を表示するには、[マクロ名] をクリックします。

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

  2. [デザイン] タブの [表示/非表示] で、マクロ名] 列を表示するのには、マクロ名] をクリックします。

  3. カスタム ショートカット メニューに表示するコマンドごとにします。

    • [マクロ名] 列で、(たとえば、「レポートの印刷」または「保存」) は、ショートカット メニューを表示するテキストを入力します。

      1. 注: アクセス キーを作成するには、キーボードを使用するには、コマンドを選択できるようにするには、コマンド名 (たとえば、"&Save") で、アクセス キーを文字の前にアンパサンド (&) を入力します。 [メニューで、この手紙が下線付きで表示します。

    • [アクション] 列には、最初のショートカット メニューのをクリックしたときに実行するアクションを選択します。

    • このコマンドを選択するときに実行するその他のアクションがある場合は、後続の行でそれらを追加します。 各後続のアクションの場合は、マクロの名前のセルを空白のままにします。

      1. 注: 2 つのメニュー コマンド間の線を作成するには、適切なメニュー コマンド間で、[マクロ名] 列でハイフン (-) を入力します。

  4. 保存して、 mcrShortcutMenuCommandsなど、マクロの名前を付けます。

次の図は、ユーザー設定のメニューまたはショートカット メニューの例マクロ グループを示しています。

デザイン ビューのメニュー マクロ グループ

ここでは、冗長ですが、手順 1 で作成したマクロ グループから、ショートカット メニューを作成するAddMenuマクロ アクションを含む別のマクロを作成する必要があります。 このマクロは、「メニュー マクロ」と呼ばれます。

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

  2. マクロの最初の行では、[操作] の一覧でメニューの追加を選択します。

  3. アクションの引数メニューの [名前] ボックスで、メニュー (たとえば、「レポート コマンド」) の名前を入力します。 この引数は必須ではありませんが、かどうかは、手順 3 で追加する場合、メニュー (フォームまたはレポートの[アドイン] タブ) などのリボン タブにはお勧めします。 手順 3 で、ショートカット メニューの [名前を付けて、[メニューを追加する場合は、メニュー名引数は無視されます。

  4. メニュー マクロ名] ボックスに、手順 1 で作成したマクロの名前を入力します。

  5. 保存して、 mcrAddShortcutMenuなど、マクロの名前を付けます。

次の図は、手順 1 で設計しました] メニューを作成する] メニューの [マクロの例を示します。

デザイン ビューのメニュー マクロ

によっては、任意の位置を表示] メニューには、次の手順のいずれかを使用します。

  • フォームまたはレポートの [アドイン] タブに、メニューを追加します。

    次の図に示すように、特定のフォームまたはレポートの [アドイン] タブの [表示] メニューを修正する場合は、この手順を使用します。

    カスタム メニューを含む [アドイン] タブ

    1. ナビゲーション ウィンドウでは、フォームまたはレポートは、[メニューを表示する場所を右クリックし、[デザイン ビュー] をクリックします。

    2. [デザイン] タブの [表示/非表示] グループの [プロパティ シート] をクリックします。

    3. プロパティ シート] 作業ウィンドウの上部にあるボックスの一覧からフォームまたはレポートを選択して、オブジェクト全体を選択します。

    4. [その他のタブの [プロパティ シートで、ショートカット メニューの [プロパティ] ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロの名前を入力します。

      次にフォームまたはレポートを開いたとき、リボンの[アドイン] タブが表示されます。 メニューを表示する] タブをクリックします。

      ユーザー設定のタブを追加するか、既定のタブを非表示にするなど、リボンのカスタマイズ方法の詳細については、 Access でユーザー設定のリボンを作成する」を参照してください。

      リボンは、Microsoft Office Fluent ユーザー インターフェイスのコンポーネントです。

  • フォーム、レポート、またはコントロールのショートカット メニューの [名前を付けて、[メニューを追加します。

    メニューを次の図に示すように、特定のフォーム、レポート、またはコントロールを右クリックしたときの表示にする場合は、この手順を使用します。

    単純なショートカット メニュー

    1. ナビゲーション ウィンドウでは、フォームまたはレポートを表示するには、ショートカット メニューを格納するを右クリックし、[デザイン ビュー] をクリックします。

    2. [デザイン] タブの [表示/非表示] グループの [プロパティ シート] をクリックします。

    3. ショートカット メニューを添付するコントロールまたはオブジェクトを選択します。

      注: 全体のオブジェクトを選択するには、プロパティ シート] 作業ウィンドウの上部にあるボックスの一覧からフォームまたはレポートを選択します。

    4. [その他のタブの [プロパティ シートで、ショートカット メニュー バーのプロパティ ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロの名前を入力します。

  • グローバル ショートカット メニューと、メニューに追加します。

    この手順では、すべての現在のデータベースの既定のショートカット メニューに置き換えます。 特定のフォーム、レポート、またはコントロールに添付するカスタム ショートカット メニューには影響しません。

    1. Microsoft Office ボタンをクリックし、[ Access のオプション] をクリックします。

    2. [Access のオプション] ダイアログ ボックスで [カレント データベース] をクリックします。

    3. [リボンとツールバーのオプション] で、ショートカット メニュー バー]ボックスで、(この例では、"mcrAddShortcutMenu") では、手順 2 で作成したマクロの名前を入力します。

  • カスタム ショートカット メニューに関連付けられているが、オブジェクトに対して既定のショートカット メニューを置き換えます。 これらのメニューで使用する Access コマンドを保持する場合は、コマンドのたいメニュー マクロ グループにコマンドの実行アクションを使用します。

  • コントロールに関連付けられているカスタム ショートカット メニューには、データベースで定義されているその他のユーザー設定のショートカット メニューが置き換えられます。 フォームまたはレポートに接続されているカスタム ショートカット メニューには、ユーザー設定のグローバル ショートカット メニューをよりも優先されます。

  • フォームまたはレポートのまたはデータベースのメニュー マクロを指定するとは、フォーム、レポート、またはデータベースを開くたびに、このメニュー マクロが実行されます。 メニュー マクロや、フォーム、レポート、コマンドを定義するマクロ グループに変更を加えるデータベースが開いている場合、する必要がありますフォーム、レポート、またはデータベースを閉じて、変更を確認します。

  • のサブメニューを作成するには、次のサブメニューのコマンドのみを含む別のマクロ グループを作成するのには、手順 1 をします。 次に、[上位] メニューのコマンドを定義するには、もう一度手順 1 に従います。 AddMenuマクロ アクションを使用して、上位レベルのマクロ グループ内のアイテムとしてサブメニューを追加します。 次の図は、サブメニューを含むにし、ショートカット メニューに表示されるメニューの [マクロ] グループを示します。 [マクロ] グループの 3 行目では、エクスポート先]サブメニュー (mcrSubMenu) を作成します。

    サブメニューがあるショートカット メニュー

    複数レベルのサブメニューを作成するには、各レベルのメニュー マクロ グループにメニューの追加アクションを使用します。 空白行より高いレベルのメニューとサブメニューが表示されますそれ以外の場合、各メニューの追加アクションのメニュー名引数の値を指定してください。

  • マクロの条件は、トップレベルのメニュー マクロのみでサポートされます。 つまり、最上位レベルのメニューについてのみが、かどうかは、特定のメニューまたはショートカット メニューが表示されます] を確認する] メニューの [マクロの条件を使用できます。 メニューのコマンドやサブメニューを非表示の条件を使うことはできません。 カスタム ショートカット メニューまたはグローバル ショートカット メニューを表示または非表示に条件を使用することもできます。

  • 必要に応じて、手順 2 で作成したメニュー マクロには、マクロ グループの一部ができます。 たとえば、複数のオブジェクトまたはコントロールのいくつかのショートカット メニューを使っている場合は、すべてのメニュー マクロを含むオブジェクトを 1 つのマクロを作成できます。 [マクロ名] 列を表示し、各マクロについて一意の名前を入力してください。 手順 3 で、次の表記法を使用してマクロを参照:マクロ。 たとえば、 mcrAddShortcutMenus.AddMenu2です。

ページの先頭へ

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

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

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

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

×