Access でカスタムリボンを作成する

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

リボン—コマンドのグループを含むプログラムウィンドウの上部にあるストリップは、 Microsoft Office Fluent ユーザー インターフェイスのコンポーネントです。Office Fluent ユーザー インターフェイスには、 Accessの1つの home コマンドが用意されています。

Accessを使用して高度なアプリケーションの作成を開始するときは、アプリケーションを使いやすくするために、Office Fluent リボンをカスタマイズすることをお勧めします。たとえば、ユーザーが特定のコマンドを使用できないように、既定のタブの一部またはすべてを非表示にしたり、使用可能にするコマンドだけを含む新しいカスタムタブを作成したりすることができます。

Office Fluent ユーザー インターフェイスを使用するすべての Microsoft Office プログラムでは、拡張マークアップ言語 (XML) を使用してリボンをカスタマイズします。したがって、XML の基本的な知識は役に立ちます。この記事では、xml の概念については説明しませんが、基本的なリボンのカスタマイズ手順と、必要に応じて変更できる xml の例を紹介します。

この記事では、XML を使用して独自のカスタムリボンを作成する方法について説明します。組み込みのツールを使用して既存のリボンを変更する場合は、「 Office でリボンをカスタマイズする」を参照してください。

目的に合ったトピックをクリックしてください

リボンのカスタマイズ方法について

ユーザー設定のリボンを作成して適用する

既定のリボンを復元する

XML の例を理解する

リボンのカスタマイズ方法について

Accessでリボンをカスタマイズするには、カスタマイズ xml を作成し、コードを追加するか、リボンを作成するときにその xml を使用するようにアクセスを指示するデータベースプロパティを設定します。XML を使用して既存のタブを非表示にしたり、新しいタブ、コマンドグループ、コマンドを追加したりすることができます。この記事の手順では、access に組み込まれているコマンド ([検索]、[並べ替え]、[保存] など) を追加し、自分で書き込んだ access マクロを実行するコマンドを追加する方法について説明します。

XML を保存できる場所はいくつかありますが、最も簡単な方法の1つは、現在のデータベースのシステムテーブルに格納することです。このプロセスでは、USysRibbons という名前のシステムテーブルを作成し、それにリボン XML を追加して、ユーザー設定のリボンをデータベース全体または特定のフォームまたはレポートに表示するかどうかを指定します。複数のカスタムリボンを定義することができます。1つは、アプリケーション全体に対して、データベース内の個々のフォームまたはレポート用の追加のリボンです。

ユーザー設定のリボンを作成して適用する

次のセクションでは、カスタムリボンを作成して適用する手順について説明します。

始める前に

ナビゲーションウィンドウでシステムテーブルを表示する   既定では、システムテーブルはナビゲーションウィンドウに表示されないので、最初に [ナビゲーションオプション] ダイアログボックスで設定を変更して、作成した後にUSysRibbonsテーブルを表示できるようにする必要があります。次の手順を実行します。

  1. Access でデータベースを開いたまま、ナビゲーションウィンドウの上部にあるナビゲーションバーを右クリックし、ショートカットメニューの [ナビゲーションオプション] をクリックします。

  2. [ナビゲーションオプション] ダイアログボックスの [表示オプション] で、[システムオブジェクトを表示する] チェックボックスをオンにし、[ OK] をクリックします。

    Access システムテーブルがナビゲーションウィンドウに表示されます。

アドインユーザーインターフェイスエラーメッセージの表示を有効にする   エラーメッセージは、リボンのカスタマイズ XML を作成してトラブルシューティングするときに有益な情報源となるため、アクセスを表示することをお勧めします。次の手順を実行します。

  1. [ファイル]、[オプション] をクリックします。注: access 2007 を使用している場合は、[ Microsoft Office] ボタン、[ access のオプション] の順にクリックします。

  2. [クライアントの設定] をクリックします。注: Access 2007 を使用している場合は、[詳細設定] をクリックします。

  3. [全般] の [アドインユーザーインターフェイスエラーを表示する] チェックボックスをオンにし、[ OK] をクリックします。

USysRibbons システムテーブルを作成する

USysRibbons システムテーブルを作成するには、次の手順を実行します。後で、この表を使ってリボンのカスタマイズ XML を保存します。

  1. [作成] タブの [テーブル] グループで、[テーブルデザイン] をクリックします。

  2. 次のフィールドをテーブルに追加します。必ず、表示されたとおりにフィールド名を入力します。

    フィールド名

    Type

    フィールド サイズ

    ID

    オートナンバー型

    長整数型

    RibbonName

    テキスト

    255

    RibbonXml

    メモ

  3. 必要に応じて、リボン XML の関数を説明するコメントフィールドなど、このテーブルにフィールドを追加することができます。

  4. [ ID ] フィールドを選択します。[デザイン] タブの [ツール] グループで、[主キー] をクリックします。

  5. クイックアクセスツールバーの [保存] をクリックするか、ctrl + S キーを押して新しいテーブルUSysRibbonsに名前を付けます。

リボンのカスタマイズ XML を USysRibbons テーブルに追加する

この例では、データベースのユーザーが [作成] タブのいずれかのツールを使用できないようにする必要があることを想定しています。さらに、次の図に示すように、[貼り付け] コマンドを使用して、[ユーザー設定] タブと呼ばれる新しいタブを作成することをお勧めします。

[カスタム リボン] タブ

次の手順の XML は、この構成を作成します。

  1. ナビゲーションウィンドウで、 USysRibbonsテーブルを右クリックし、ショートカットメニューの [データシートビュー ] をクリックします。

  2. 次のデータをテーブルに追加します。この記事から XML サンプルをコピーして、表に直接貼り付けることができます。

    ID

    RibbonName

    RibbonXML

    オートナンバー型

    マイタブ

    <customUI xmlns="http://schemas.microsoft.com
    /office/2006/01/customui">
    <ribbon startFromScratch="false">
    <tabs>
    <tab idMso="TabCreate" visible="false" />
    <tab id="dbCustomTab" label="A Custom Tab" visible="true">
    <group id="dbCustomGroup" label="A Custom Group">
    <control idMso="Paste" label="Built-in Paste" enabled="true"/>
    </group>
    </tab>
    </tabs>
    </ribbon>
    </customUI>
  3. この XML では、最初に "ゼロから開始" ではなく、access に既定のリボンタブが表示されるように指定します。次に、既定のタブ ([作成] タブ) の1つのみを非表示にするように Access に指示します。最後に、"ユーザー設定のタブ" という名前の新しいリボンタブを作成し、"ユーザー設定のグループ" という名前のコマンドグループをタブに追加して、[貼り付け] コマンドをグループに追加します。この例とニーズに合わせてカスタマイズする方法の詳細については、「 XML の例を理解する」を参照してください。

  4. USysRibbons テーブルを閉じて、データベースを閉じてからもう一度開きます。

ユーザー設定のリボンを適用する

カスタムリボン XML がテーブルに保存されたので、データベース全体または特定のフォームまたはレポートにリボンを適用するかどうかに応じて、次のいずれかの操作を行います。

  • カスタムリボンをデータベース全体に適用する   

    1. [ファイル]、[オプション] をクリックします。注: access 2007 を使用している場合は、[ Microsoft Office] ボタン、[ access のオプション] の順にクリックします。

    2. [カレントデータベース] をクリックし、[リボンとツールバーのオプション] でリボン名リストを選択し、目的のリボン (この場合は [ My] タブ) をクリックします。

    3. [OK] をクリックします。

  • カスタムリボンを特定のフォームまたはレポートに適用する   

    1. ナビゲーションウィンドウで、カスタムリボンを適用するフォームまたはレポートを右クリックし、ショートカットメニューの [デザインビュー ] をクリックします。

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

    3. プロパティシートの上部にある [選択の種類] で、一覧でオブジェクトの種類 (フォームまたはレポート) が選択されていることを確認します。

    4. プロパティシートの [その他] タブで、[リボン名] ボックスの一覧をクリックし、フォームまたはレポートを開くときに表示するリボンをクリックします (この場合、 [My] タブ)。

    5. クイック アクセス ツール バーの [保存] をクリックするか、Ctrl キーを押しながら S キーを押します。

    6. フォームまたはレポートを閉じ、ナビゲーションウィンドウでそれをダブルクリックしてもう一度開きます。

      選択したリボンが表示されます。

カスタムリボンが正しく動作することを確認したら、次の操作を行って、システムテーブルをもう一度非表示にすることができます。

  1. ナビゲーションウィンドウの上部にあるナビゲーションバーを右クリックし、ショートカットメニューの [ナビゲーションオプション] をクリックします。

  2. [ナビゲーションオプション] ダイアログボックスの [表示オプション] で、[システムオブジェクトを表示する] チェックボックスをオフにして、[ OK] をクリックします。

ページの先頭へ

既定のリボンを復元する

カスタムリボンの使用を停止し、既定のリボンを復元するには、ユーザー設定のリボンがアプリケーション全体で使用されているか、特定のフォームまたはレポートによって使われているかに応じて、次のいずれかの手順を実行します。

既定のアプリケーションレベルのリボンを復元する

  1. [ファイル]、[オプション] をクリックします。注: access 2007 を使用している場合は、[ Microsoft Office] ボタン、[ access のオプション] の順にクリックします。

  2. [カレントデータベース] をクリックし、[リボンとツールバーのオプション] で [リボン名] ボックスの内容を削除します。

  3. データベースを閉じてから、もう一度開きます。

Access では、既定のリボンタブが表示されます。リボン XML は削除するまで USysRibbons テーブルに保持されるため、カスタムリボンを元に戻す場合は、リボン名オプションを以前に保存した値に設定します。

フォームまたはレポートの既定のリボンを復元する

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

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

  3. プロパティシートの上部にある [選択の種類] で、一覧でオブジェクトの種類 (フォームまたはレポート) が選択されていることを確認します。

  4. プロパティシートの [その他] タブで、[リボン名] プロパティボックスの内容を削除します。

  5. フォームまたはレポートを保存して閉じ、もう一度開きます。

リボン XML は削除するまで USysRibbons テーブルに保持されるため、カスタムリボンを復元する場合は、リボン Nameプロパティの値を以前に保存した値に設定します。

ページの先頭へ

XML の例を理解する

ここでは、この記事で既に使用した XML の例と、作成したカスタムリボンの図を示します。

<customUI xmlns="http://schemas.microsoft.com
/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>

[カスタム リボン] タブ

この例では、XML の2行目でstartFromScratch属性をFalseに設定しています。値を False に設定すると、既存のすべてのタブをそのまま残して、既存のすべてのタブを追加することができます。この属性をTrueに設定すると、既存のすべてのタブが削除され、XML で作成したものだけを表示します。startFromScratch属性をFalseに設定した場合でも、個々のタブを非表示にすることはできます。これは、組み込みの [作成] タブを非表示にする、4行目の XML で示されています。残りの行では、ユーザー設定のタブとユーザー設定のグループを作成し、次の XML 行を使用して、組み込みの [貼り付け] コマンドをグループに追加します。

<control idMso="Paste" label="Built-in Paste" enabled="true"/>

ユーザー設定のリボンにグループまたはコントロールを追加する   同じような XML の行を追加して、異なるidMsoラベルの値を置き換えることによって、リボンにグループやコントロールを追加することができます。たとえば、現在選択されているオブジェクトを Excel にエクスポートするコントロールを作成するには、次の XML を使用します。

<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>

[貼り付け] コマンドと同じグループにコントロールを追加するには、[貼り付け] コマンドを作成する行の直前または直後に新しい XML 行を挿入します。新しいグループを作成するには、上のユーザー設定のグループグループを作成する XML をコピーして貼り付け、変更します。次の例は、2つのコントロールをカスタムグループに追加する XML を示しています。

<customUI xmlns="http://schemas.microsoft.com
/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
</group>
<group id="dbCustomGroup2" label="Another Custom Group">
<control idMso="ImportExcel" label="Import from Excel" enabled="true"/>
<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>

この XMLは、ユーザー設定のタブに別のグループを追加します。次の図に示すように、新しいグループには、excel からのインポート操作を開始する2つのコントロールと、excel へのエクスポート操作が開始されます。

グループが 2 つある [カスタム] リボンのタブ

注: カスタムリボンの各グループ idタブ id値は一意である必要があります。

コマンドの idMso 値を確認   する組み込みコマンドの idMso 値を確認するには、次の手順を実行します。

  1. [ファイル]、[オプション] をクリックします。注: access 2007 を使用している場合は、[ Microsoft Office] ボタン、[ access のオプション] の順にクリックします。

  2. [リボンまたはクイックアクセスツールバーユーザー設定] をクリックします。注: Access 2007 を使用している場合は、[ユーザー設定] をクリックします。

  3. 情報が必要な項目の上にポインターを移動します。Access によって、コントロールの idMso 値がかっこで囲まれたポップヒントに表示されます。

Access マクロを実行するコマンドを追加する   Access マクロを実行するコマンドを追加することで、カスタムリボンにさらに柔軟に追加できます。たとえば、 MyMacroという名前のマクロを作成したとします。マクロを実行するコマンドをリボンに追加するには、XML に次の行を追加します。

<button id="RunMyMacro" label="Run My Macro" onAction="MyMacro"/>

前の例の [貼り付け] コマンドと同じグループにコントロールを追加するには、[貼り付け] コマンドを作成する行の直前または直後に新しい XML 行を挿入します。次の例は、コマンドを追加する XML を示しています。

<customUI xmlns="http://schemas.microsoft.com
/office/2006/01/customui">
<ribbon startFromScratch="false">
<tabs>
<tab idMso="TabCreate" visible="false" />
<tab id="dbCustomTab" label="A Custom Tab" visible="true">
<group id="dbCustomGroup" label="A Custom Group">
<control idMso="Paste" label="Built-in Paste" enabled="true"/>
<button id="RunMyMacro" label="Run My Macro" onAction="MyMacro"/>
</group>
<group id="dbCustomGroup2" label="Another Custom Group">
<control idMso="ImportExcel" label="Import from Excel" enabled="true"/>
<control idMso="ExportExcel" label="Export to Excel" enabled="true"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>

ページの先頭へ

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

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

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

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

×