Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

Visual Studio Tools for Officeで作るOfficeアプリケーション

Visual Studio 2008 徹底入門 (9)

  • LINEで送る
  • このエントリーをはてなブックマークに追加

Visual Studio 2008に付属のVisual Studio Tools for the Microsoft Office Systemを利用して、どのようなOfficeカスタムアプリケーションを作成することができるかご紹介します。また、Office 2007注目のUIであるリボンの開発など、最新バージョンで追加された様々な新機能などを取り上げ、Officeカスタムアプリケーション開発によってどんなことができるかをご紹介します。

目次

はじめに

 2007年12月に、Visual Studioの最新バージョンであるVisual Studio 2008(以下、VS2008)がリリースされました。従来のVS2005までは、Professional Editionを購入しただけでは、Office開発のための機能は付属しておらず、専用のVisual Studio 2005 Tools for the Office Systemを購入しなければ、.NETでOfficeアプリケーションを開発することができませんでした(Visual Studio 2005 Team Systemシリーズの各製品やMSDN Subscription契約の場合には付属していました)。

 一方、VS2008ではProfessional EditionからOfficeカスタムアプリケーション開発を支援するVisual Studio Tools for the Microsoft Office System(以下、VSTO)が付属することとなり、VS2005よりもさらにOfficeカスタムアプリケーション開発が始めやすくなりました。ツールの導入のしやすさはもちろんですが、最新のVSTOではOffice 2007用の開発サポートなどをはじめ、次のリストにあげるようなさまざまな新機能が盛り込まれています。

  • the 2007 Microsoft Office System対応のOfficeアプリケーションの作成*
  • Word、Excel、PowerPointなどのアプリケーションアドインの作成*
  • リボンのカスタマイズ(Office 2007のみ)*
  • VBAや他Officeアプリケーションとの相互連携(Office 2007のみ)*
  • ClickOnceによるアプリケーションの配布(Office 2007のみ)*
  • SharePointワークフローの作成(SharePoint 2007のみ)
  • カスタム作業ウィンドウの作成(Office 2007のみ)
  • Outlookのための拡張機能(Outlook 2007のみ)

 本稿では、上記リストの「*」のついた項目について紹介していきます。

対象読者

  • Visual Studio 2008に興味がある方
  • .NET Framework 3.5に興味がある方
  • Officeアプリケーション開発に興味がある方

必要な環境と準備

 Visual Studio 2008入門シリーズ「新しい統合開発環境 Visual Studio 2008 ってなんだ!?」の必要な環境と準備を参考にしてください。

いろいろと比較

 VSTOを使ったアプリケーションの作成方法を紹介する前に、いろいろと比較をしてみたいと思います。1つは過去のVSTOとの比較、もう1つはVS2008のマルチターゲッティングを使用した場合の比較です。

過去のVSTOとの比較

 VSTOのバージョン1はVS.NET2003にアドインとしてVSTO 2003がリリースされました。以降、VS2005の登場とともにバージョン2のVSTO 2005、the 2007 Microsoft Office System登場時にVSTO 2005に追加の形でVSTO 2005 SEがリリースされています。

 今回、VS2008と同時にリリースされたものはバージョン3のVSTO 2008で、バージョンを重ねるごとに対応するOfficeアプリケーションの種類を増やしてきました。Visual Studioの1つ前のバージョンであるVS2005と同時にリリースされたVSTO 2005から今回のVSTO 2008までのそれぞれで、どのような開発種類をサポートしているかを以下の表1に示します。

表1:VSTOごとの開発可能アプリケーション比較
VSTOバージョン Officeバージョン ドキュメントレベル アプリケーションレベル
VSTO 2005(v2) Office 2003 Excelブック
Excelテンプレート
Wordドキュメント
Wordテンプレート
Outlookアドイン
VSTO 2005 SE Office 2003 Excelブック
Excelテンプレート
Wordドキュメント
Wordテンプレート
InfoPathフォームテンプレート
Outlookアドイン
Office 2007   Excelアドイン
Wordアドイン
PowerPointアドイン
Outlookアドイン
Visioアドイン
InfoPathアドイン
VSTO 2008(v3) Office 2003 Excelブック
Excelテンプレート
Wordドキュメント
Wordテンプレート
Excelアドイン
Wordアドイン
PowerPointアドイン
Outlookアドイン
Visioアドイン
Projectアドイン
Office 2007 Excelブック
Excelテンプレート
Wordドキュメント
Wordテンプレート
InfoPathフォームテンプレート
Excelアドイン
Wordアドイン
PowerPointアドイン
Outlookアドイン
Visioアドイン
Projectアドイン

 VSTO 2008ではかなりいろいろな種類の開発をサポートしていることが分かると思います。ドキュメントレベル、アプリケーションレベルの詳細については、後ほど解説します。

.NET Frameworkのバージョンによる比較

 VSTO 2008ではさまざまな種類のOfficeカスタムアプリケーションが作成できますが、表1の一覧にあるVSTO 2008の部分はすべて、.NET Framework 3.5で開発することを前提としたものです。試しにVS2008でプロジェクトの種類をOfficeにして新しいプロジェクトを作成しようとしたものが図1です。

図1:新しいOfficeカスタムアプリケーションプロジェクトの作成
図1:新しいOfficeカスタムアプリケーションプロジェクトの作成

 図1のように、.NET Frameworkのバージョンとして3.5を選択しているときには、表1のVSTO 2008に示したどおりのOfficeカスタムアプリケーションの開発が可能です。しかし、VS2008のマルチターゲッティング機能を利用して、.NET Framework 2.0(または3.0)にした場合には、図2に示すテンプレートが有効になります。

図2:.NET Framework 2.0でのOfficeカスタムアプリケーション開発
図2:.NET Framework 2.0でのOfficeカスタムアプリケーション開発

 このように.NET Framework 3.5を選択しているときには、Office 2003/2007用のアプリケーションが作成できますが、.NET Framework 2.0(または3.0)を選択した場合には、Office 2003用のアプリケーションの作成のみになります。この種類はVSTO 2005やVSTO 2005 SEとも異なるものなのでそれぞれの違いには注意してください。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

  • WINGSプロジェクト りばてぃ/FUJIKO/ナオキ(リバティ, フジコ, ナオキ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2012年2月時点での登録メンバは37名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂き...

バックナンバー

連載:Visual Studio 2008徹底入門

もっと読む

おすすめ記事

All contents copyright © 2006-2016 Shoeisha Co., Ltd. All rights reserved. ver.1.5