アプリケーションレベルのOfficeアドイン開発を実現するツールを無償提供

Visual Studio 2005 Tools for Officeの無償のアップデートでは、Office 2007に対応したほか、Office 2003向けアプリケーションのより柔軟な開発と展開を実現している。ただし、実用的なグラフィカルエディタの提供やOfficeとの統合強化といった課題も残されている。

» 2007年02月14日 07時00分 公開
[Greg DeMichillie,Directions on Microsoft]
Directions on Microsoft 日本語版

 Visual Studio 2005 Tools for Office(VSTO 2005)のアップデートが無償で提供されている。Office 2007のサポートを追加し、ユーザーインタフェースを刷新したほか、Office 2003用アプリケーションのより柔軟な開発と展開を可能にした。なお、同アップデートの正式名は「Visual Studio 2005 Tools for the 2007 Microsoft Office System」であるが、Microsoftは通常「Visual Studio Tools for Office 2005 Second Edition(VSTO 2005 SE)」と呼称している。

 Microsoftでは、Officeのアップグレードを促進し、ASP.NETアプリケーション、Google Spreadsheets、OpenOfficeなど、ブラウザベースまたは競合する代替アプリケーションへの移行に歯止めをかけるべく、Officeを単なる文書作成ツールではなく、企業の基幹業務(Line Of Business)アプリケーションの必須コンポーネントの座に据えようと長年取り組んできた。VSTO 2005 SEはその取り組みの最新の成果である。ただし、実用的なグラフィカルエディタの提供やOfficeとVSTOとの統合強化といった課題も残されている。

アプリケーションレベルのアドイン開発が可能に

 VSTO 2005 SEでは、Officeアプリケーション向けにアプリケーションレベルのアドインを開発する機能が追加されている。

 Outlookを除き、以前のバージョンのOfficeおよびVSTOによる開発では、ドキュメントベースのアドインしかサポートされていなかった。この種類のアドインは、特定のドキュメントテンプレートに組み込まれ、このテンプレートに基づくドキュメントをアクティブにしなければ有効にならなかった。例えば、ERPシステムの経費コードを参照するアドインを組み込んだカスタムの経費報告スプレッドシートを作成するとしよう。経費報告テンプレートを使用してスプレッドシートを作成した場合は、コードを参照するアドインを利用できるが、別のテンプレートを利用したスプレッドシートではコードを参照できない。

 ドキュメントレベルのアドインにはメリットもあるが、どのドキュメントからも使用できるアドインが必要な場合もある。例えば、作成したスプレッドシートから、任意のスプレッドシート内にある最新の売上高を参照したい場合だ。VSTO 2005 SEでは、Office 2003および2007向けに、このようなアプリケーションレベルのアドインを開発することができる。アプリケーションレベルのアドインは、.NETアセンブリとして展開され、適切なOfficeアプリケーション用のアドインとして登録される。

 ただし、VSTO 2005 SEは、VSTO 2005に完全に置き換わるものではない。VSTO 2005 SEはドキュメントレベルのアドインをサポートしていないためだ。アプリケーションレベルのアドインとドキュメントレベルのアドインの両方の開発が必要な場合は、この新旧2つのVSTOをインストールしておかなければならない。VSTO 2005(または、VSTO機能を含むVisual Studio 2005 Team Editionのいずれかのバージョン)を購入していない場合、無償のVSTO 2005 SEをダウンロードしただけでは、アプリケーションレベルのアドインしか開発できない。

Office 2007に対応、待たれる実用ツールの充実

 VSTO 2005 SEを使用すると、Office 2007のユーザーインタフェース拡張を開発できる。つまり、カスタムのリボン(従来のメニュー式インタフェースに代わりOffice 2007で導入された新しいインタフェース)を作成できる。ただし、VSTO 2005 SEはリボン用のWYSIWYGエディタを提供していない。リボンは、テキストベースのXMLファイルとして作成および編集する必要がある。Visual Studioには、内蔵のエディタにXMLタグの入力を開始するとそのタグを自動的に完成するオートコンプリート機能や、XMLファイル内のカーソルの位置に応じてさまざまなドロップダウンメニューを提供するIntelliSenseなど、XMLファイルの作成を支援する機能が幾つか用意されている。しかし、仮にVSOTにドラッグ&ドロップのグラフィカルエディタが提供されていた場合と比べると、テキストベースでのリボンの編集は格段に困難になる。だが、このようなグラフィカルエディタの登場は、VSTOの次のアップデートまで待つ必要がありそうだ。

 また、Office 2003と異なり、Office 2007はVSTOから直接起動することができない。例えば、Excel 2003では、VSTOから直接カスタムのツールバーを組み込んだ財務スプレッドシートを作成し、これらのツールバー用のコードを記述することができた。Office 2007では、Excel 2007を使用してスプレッドシートを作成し、VSTOを使用してコードを作成した上で、スプレッドシートにコードを組み込む必要がある。

Outlookフォームの拡張も可能に

 VSTO 2005 SEは、予定表や連絡先の入力に使用されるフォームなど標準のOutlookフォームを拡張する機能も備えている。例えば、VB.NETまたはC#を使用して、Outlookの仕事フォームと支払請求システムとをリンクするカスタムコードを追加できる。その場合、まずOutlookに組み込まれているフォームデザイナを使用してカスタムフォームを作成し、次にVSTOを使用してカスタムコードを作成する。

 ただし、Outlookとの統合は十分とは言えない。Outlookにアクセスし適切に機能するようにするためだけでも、かなりの量の定型的なコードを用意しなければならない。

Copyright(C) 2007, Redmond Communications Inc. and Mediaselect Inc. All right reserved. No part of this magazine may be reproduced, stored in a retrieval system, or transmitted in any form or by any means without prior written permission. ISSN 1077-4394. Redmond Communications Inc. is an independent publisher and is in no way affiliated with or endorsed by Microsoft Corporation. Directions on Microsoft reviews and analyzes industry news based on information obtained from sources generally available to the public and from industry contacts. While we consider these sources to be reliable, we cannot guarantee their accuracy. Readers assume full responsibility for any use made of the information contained herein. Throughout this magazine, trademark names are used. Rather than place a trademark symbol at every occurrence, we hereby state that we are using the names only in an editorial fashion with no intention of infringement of the trademark.

注目のテーマ