リボンは、関連するコマンドを簡単に見つけられるように整理する方法です。 コマンドは、リボンにコントロールとして表示されます。 コントロールは、アプリケーション ウィンドウの上端にある水平ストリップに沿って グループ 化されます。 関連するグループはタブに整理されます。
以前のバージョンの Microsoft Office システムのメニューとツール バーを使用してアクセスした機能のほとんどは、リボンを使用してアクセスできるようになりました。 詳細については、 2007 Microsoft Office システムのユーザー インターフェイスの開発者向け技術記事の概要を参照してください。
適用対象: このトピックの情報は、次のアプリケーションのドキュメント レベルのプロジェクトと VSTO アドイン プロジェクトに適用されます: Excel、InfoPath 2013 および InfoPath 2010、Outlook、PowerPoint、Project、Visio、Word。 詳細については、「 Office アプリケーションとプロジェクトの種類で使用できる機能」を参照してください。
Microsoft Office リボンをカスタマイズする
リボンをカスタマイズするには、次のいずれかのリボン項目を Office プロジェクトに追加します。
リボン (ビジュアル デザイナー)
リボン (XML)
たとえば、Excel リボンをカスタマイズするには、リボン項目を Excel VSTO アドイン プロジェクトに追加します。
リボン (ビジュアル デザイナー) 項目
リボン (ビジュアル デザイナー) 項目には、カスタム リボンの設計と開発を容易にする高度なツールが用意されています。 リボン (ビジュアル デザイナー) 項目を使用して、次の方法でリボンをカスタマイズします。
リボンにカスタム タブまたは組み込みタブを追加します。
カスタム グループをカスタム タブまたは組み込みタブに追加します。
注
組み込みのタブまたはグループは、Microsoft Office アプリケーションのリボンに既に存在するものです。 たとえば、[ データ ] タブは Excel の組み込みタブです。 [接続] グループは、[データ] タブの組み込みグループです。
カスタム グループにカスタム コントロールを追加します。
Backstage ビューにカスタム コントロールを追加します。
リボン (ビジュアル デザイナー) 項目を使用してリボンをカスタマイズする方法の詳細については、「リボン デザイナー」を参照してください。
リボン (XML) 項目
リボン (ビジュアル デザイナー) 項目でサポートされていない方法でリボンをカスタマイズする場合は、リボン (XML) 項目を使用します。 リボン (XML) 項目を使用して、次の方法でリボンをカスタマイズします。
組み込みグループをカスタム タブまたは組み込みタブに追加します。
組み込みコントロールをカスタム グループに追加します。
組み込みコントロールのイベント ハンドラーをオーバーライドするカスタム コードを追加します。
クイック アクセス ツール バーをカスタマイズします。
修飾 ID を使用して、VSTO アドイン間でリボンのカスタマイズを共有します。
リボン (XML) 項目を使用してリボンをカスタマイズする方法の詳細については、「リボン XML」を参照してください。
リボン デザイナーからリボン XML にリボンをエクスポートする
リボン デザイナーを使用してリボンを作成し、リボン (ビジュアル デザイナー) 項目がサポートしていない方法でリボンをカスタマイズする場合は、リボンを XML にエクスポートできます。
Visual Studio によってリボン (XML) 項目が自動的に作成され、リボンの各コントロールの要素と属性がリボン XML ファイルに設定されます。
リボン デザイナーの [ プロパティ ] ウィンドウにあるすべてのプロパティがリボン XML ファイルに転送されるわけではありません。 たとえば、Visual Studio は Image プロパティまたは Text プロパティの値をエクスポートしません。 これは、イメージを割り当てたり、コントロールのテキストを設定したりするには、エクスポートしたプロジェクトのリボン コード ファイルにコールバック メソッドを作成する必要があるためです。 Visual Studio は、エクスポート プロセスの一部としてコールバック メソッドを自動的に生成しません。
さらに、変更されていない既定のプロパティ値は、結果のリボン XML ファイルには表示されません。
リボンを XML にエクスポートする方法の詳細については、「 方法: リボン デザイナーからリボン XML にリボンをエクスポートする」を参照してください。
コードを更新する
新しいリボン コード ファイルが ソリューション エクスプローラーに追加されます。 このファイルには、リボン XML クラスが含まれています。 ボタンのクリックなどのユーザー アクションを処理するには、このクラスの Ribbon Callbacks 領域にコールバック メソッドを作成する必要があります。 イベント ハンドラーからこれらのコールバック メソッドにコードを移動し、リボン拡張機能 (RibbonX) プログラミング モデルを使用するようにコードを変更します。 詳細については、「 リボン XML」を参照してください。
また、ThisAddIn メソッドをオーバーライドし、リボン XML クラスを Office アプリケーションに返すThisWorkbook、ThisDocument、またはCreateRibbonExtensibilityObject クラスにコードを追加する必要があります。
詳細については、「 リボン XML」を参照してください。
プロジェクトに複数のリボン 項目を追加する
1 つのプロジェクトに複数のリボン 項目を追加できます。 これは、次の 2 つのタスクのいずれかを実行する場合に便利です。
Outlook インスペクターのリボン を作成します。 詳細については、「 Outlook のリボンをカスタマイズする」を参照してください。
注
インスペクターは、ユーザーが電子メール メッセージの作成などの特定のタスクを実行するときに開くウィンドウです。
実行時に表示するリボンを選択します。
実行時に表示するリボンを選択する
プロジェクトには複数のリボンを含めることができるため、実行時に表示するリボンを選択できます。
実行時に表示するリボンを選択するには、プロジェクトのCreateRibbonExtensibilityObject、ThisAddin、またはThisWorkbook クラスのThisDocument メソッドをオーバーライドし、表示するリボンを返します。 次の例では、 myCondition という名前のフィールドの値を確認し、適切なリボンを返します。
注
この例で使用する構文は、リボン (ビジュアル デザイナー) 項目を使用して作成されたリボンを返します。 リボン (XML) 項目を使用して作成されたリボンを返す構文は若干異なります。 リボン (XML) 項目を返す方法の詳細については、「リボン XML」を参照してください。
次のコードを追加します。
protected override Microsoft.Office.Core.IRibbonExtensibility
CreateRibbonExtensibilityObject()
{
if (myCondition == true)
{
return Globals.Factory.GetRibbonFactory().CreateRibbonManager(
new Microsoft.Office.Tools.Ribbon.IRibbonExtension[] { new Ribbon1() });
}
else
{
return Globals.Factory.GetRibbonFactory().CreateRibbonManager(
new Microsoft.Office.Tools.Ribbon.IRibbonExtension[] { new Ribbon2() });
}
}
関連トピック
| Title | Description |
|---|---|
| 方法: リボンのカスタマイズを開始する | Microsoft Office アプリケーションのリボンをカスタマイズする方法、リボン (ビジュアル デザイナー) または リボン (XML) 項目を Office プロジェクトに追加する方法について説明します。 |
| リボン デザイナー | リボン デザイナーを使用して、Microsoft Office アプリケーションのリボンにカスタム タブ、グループ、コントロールを追加する方法について説明します。 |
| チュートリアル: リボン デザイナーを使用してカスタム タブを作成する | リボン デザイナーを使用してカスタム リボン タブを作成する方法について説明します。 リボン デザイナーを使用して、カスタム タブにコントロールを追加および配置できます。 |
| リボン オブジェクト モデルの概要 | 実行時にリボン コントロールのプロパティを取得および設定するために使用できる、厳密に型指定されたオブジェクト モデルの概要について説明します。 |
| チュートリアル: 実行時にリボンのコントロールを更新する | リボン オブジェクト モデルを使用して、リボンが Office アプリケーションに読み込まれた後にリボンのコントロールを更新する方法を示します。 |
| Outlook のリボンをカスタマイズする | Microsoft Office Outlook でリボンをカスタマイズするためのガイダンスを提供します。 |
| InfoPath のリボンをカスタマイズする | Microsoft Office InfoPath でリボンをカスタマイズするためのガイダンスを提供します。 |
| 実行時にリボンにアクセスする | リボンを表示、非表示、変更する方法と、ユーザーがカスタム作業ウィンドウ、操作ウィンドウ、または Outlook フォーム領域のコントロールからコードを実行できるようにする方法を示します。 |
| 方法: リボンのタブの位置を変更する | リボンのタブの順序を変更する方法を示します。 |
| 方法: 組み込みタブをカスタマイズする | 組み込みのタブにグループとコントロールを追加する方法を示します。 |
| 方法: Backstage ビューにコントロールを追加する | [ファイル] をクリックしたときに開くメニューにコントロールを追加する方法を示します。 |
| 方法: ダイアログ ボックス起動ツールをリボン グループに追加する | リボン上の任意のグループにダイアログ ボックス起動ツールを追加する方法を示します。 |
| 方法: リボン デザイナーからリボン XML にリボンをエクスポートする | リボンをデザイナーからリボン XML にエクスポートして、リボンを高度な方法でカスタマイズする方法を示します。 |
| リボン XML | リボン XML を使用してリボンをカスタマイズする方法について説明します。 |
| チュートリアル: リボン デザイナーを使用してカスタム タブを作成する | リボン (XML) 項目を使用してカスタム リボン タブを作成する方法を示します。 |