Excel アドインの概要
Excel アドインを使用すると、Windows、Mac、iPad、ブラウザーなど、複数のプラットフォームで Excel アプリケーション機能を拡張できます。 ブック内で Excel アドインを使用すると、次の操作を実行できます。
- Excel オブジェクトを操作して Excel データを読み書きします。
- Web ベースの作業ウィンドウまたはコンテンツ ウィンドウを使用して機能を拡張します
- カスタム リボン ボタンやコンテキスト メニューの項目を追加します
- カスタム関数を追加します
- ダイアログ ウィンドウを使用して充実した操作を提供します
Office アドインのプラットフォームには、Excel アドインの作成と実行を可能にするフレームワークと Office.js JavaScript API が用意されています。Office アドインのプラットフォームを使用した Excel アドインの作成には、次の利点があります。
- クロスプラットフォーム サポート: Excel アドインは、Office on the web、Windows、Mac、iPad で実行できます。
- 一元展開: 管理者は、組織全体のユーザーに Excel アドインをすばやく簡単に展開できます。
- 標準の Web テクノロジの使用: HTML、CSS、JavaScript などの一般的な Web テクノロジを使用する Excel アドインを作成します。
- AppSource を経由した配布: Excel アドインを AppSource に公開することで、幅広いユーザーと共有します。
注:
Excel アドインは、WINDOWS 上の Office でのみ実行される以前の Office 統合ソリューションである COM アドインと VSTO アドインとは異なります。 COM アドインとは異なり、Excel アドインでは、ユーザーのデバイスまたは Excel 内にコードをインストールする必要はありません。
Excel アドインのコンポーネント
Excel アドインには 2 つの基本コンポーネントが含まれています。Web アプリケーションと、マニフェスト ファイルと呼ばれる構成ファイルです。
Web アプリケーションは 、Office JavaScript API を使用して Excel 内のオブジェクトと対話し、オンライン リソースとの対話を容易にすることもできます。 たとえば、アドインは次のいずれかのタスクを実行できます。
- ブック内のデータ (ワークシート、範囲、表、グラフ、名前付きの項目など) を作成、読み込み、更新、および削除します。
- 標準の OAuth 2.0 のフローを使用して、オンライン サービスでユーザー認証を実行します。
- Microsoft Graph やその他の API に、API 要求を発行します。
Web アプリケーションは、任意の Web サーバー上でホストできます。また、クライアント側のフレームワーク (Angular、React、jQuery など) や、サーバー側のテクノロジ (ASP.NET、Node.js、PHP など) を使用して構築できます。
マニフェストは、次のような設定と機能を指定することで、アドインを Office クライアントと統合する方法を定義する構成ファイルです。
- アドインの Web アプリケーションの URL。
- アドインの表示名、説明、ID、バージョン、および既定のロケール。
- アドインと Excel を統合する方法。アドインが作成する任意のカスタム UI (リボンのボタン、コンテキスト メニューなど) の統合を含む。
- ドキュメントの読み取り、書き込みなど、アドインに必要なアクセス許可。
エンドユーザーが Excel アドインをインストールして使用できるようにするには、そのマニフェストを AppSource かアドイン カタログに公開する必要があります。 AppSource の発行の詳細について、「AppSource と Office 内でソリューションを使用できるようにする」を参照してください。
Excel アドインの機能
ブック内のコンテンツの操作の他に、Excel アドインでは、カスタム リボンのボタンやメニュー コマンドを追加したり、作業ウィンドウを挿入したり、カスタム関数を追加したり、ダイアログ ボックスを開いたり、グラフや対話型のビジュアル化などの豊富な Web ベースのオブジェクトをワークシート内に埋め込むことができます。
アドイン コマンド
アドイン コマンドは、Excel UI を拡張し、アドインでアクションを開始する UI 要素です。 アドイン コマンドを使って、Excel のリボンにボタンを追加したり、コンテキスト メニューに項目を追加したりできます。 ユーザーがアドイン コマンドを選択するときは、JavaScript コードの実行や、作業ウィンドウでのアドインのページの表示といったアクションを開始します。
コマンドの機能、サポートされているプラットフォーム、およびアドイン コマンド開発のベスト プラクティスについては、「Excel、Word、および PowerPoint のアドイン コマンド」を参照してください。
作業ウィンドウ
作業ウィンドウは、通常 Excel 内のウィンドウの右側に表示されるインターフェイスのサーフェスです。 作業ウィンドウにより、ユーザーはコードを実行して Excel ドキュメントを修正したり、データ ソースからデータを表示したりするインターフェイス コントロールにアクセスできます。
作業ウィンドウの詳細については、「Office アドインの作業ウィンドウ」を参照してください。Excel の作業ウィンドウを実装するサンプルについては、「Excel アドインの JS WoodGrove Expense Trends」を参照してください。
カスタム関数
開発者は、カスタム関数を使用して関数をアドインの一部として JavaScript で定義することによって、Excel に新しい関数を追加できます。 ユーザーは Excel 内から、SUM()
などの Excel のあらゆるネイティブ関数の場合と同じようにカスタム関数にアクセスできます。
カスタム関数の詳細については、「Excel でカスタム関数を作成する」を参照してください。
ダイアログ ボックス
ダイアログ ボックスは、作業中の Excel アプリケーション ウィンドウの手前に浮動するサーフェスです。 ダイアログ ボックスは、作業ウィンドウに直接開くことができないサインイン ページの表示、ユーザーによるアクションを確認するための要求、作業ウィンドウ内で再生すると小さすぎるビデオのホストなどの作業に使用できます。 Excel アドインでダイアログ ボックスを開くには、ダイアログ API を使用します。
ダイアログ ボックスとダイアログ API の詳細については、「Office アドインでダイアログ API を使用する」を参照してください。
コンテンツ アドイン
コンテンツ アドインは、Excel ドキュメントに直接埋め込むことができるサーフェスです。 コンテンツ アドインを使用すると、グラフ、データのビジュアル化、メディアなど豊富な Web ベース オブジェクトをワークシートに埋め込んだり、Excel ドキュメントの変更またはデータ ソースのデータの表示のためのコードを実行するインターフェイス コントロールへのアクセスをユーザーに提供したりできます。 機能を直接ドキュメントに埋め込む場合は、コンテンツ アドインを使用します。
コンテンツ アドインの詳細については、「コンテンツ Office アドイン」を参照してください。Excel のコンテンツ アドインの実装サンプルについては、GitHub の「Excel コンテンツ アドイン Humongous Insurance」を参照してください。
ブックのコンテンツを操作する JavaScript API
Excel アドインは、次の 2 つの JavaScript オブジェクト モデルを含む Office JavaScript API を使用して、Excel のオブジェクトを操作します。
Excel JavaScript API:Office 2016 で導入された Excel JavaScript API には、ワークシート、範囲、表、グラフなどへのアクセスに使用できる、厳密に型指定された Excel オブジェクトが用意されています。
共通 API: Office 2013 で導入された共通 API を使用すると、複数の種類の Office アプリケーション間で共通の UI、ダイアログ、クライアント設定などの機能にアクセスすることができます。 Common API での Excel 操作の制限された機能は、Excel JavaScript API に置き換えられました。
次の手順
最初の Excel アドインを作成することから始めます。 次に、Excel アドイン構築の中心概念について説明します。
関連項目
Office Add-ins