Hebikuzure's Tech Memo

2013年12月21日

HTML5 と JavaScript で作る Apps for Office

Filed under: Yet Another Internet Explorer Advent Calendar 2013 — hebikuzure @ 10:03 午後

この記事は “Yet Another Internet Explorer Advent Calendar 2013” の 21 日目です。


今日は「Apps for Office サミット」という勉強会に参加してきました。その復習を兼ねて、Apps for Office についてまとめてみたいと思います。

Apps for Office (日本語だと Office 用アプリ) は Microsoft Office 2013 から加わった、新しい Office アプリケーションの自動化の仕組みです。Microsoft Word や Excel などの Office アプリケーションの自動化 (オートメーション) の方法としては、古くから利用されている VBA (Visual Basic for Application) や、Office 2003 以降で利用可能な VSTO (Visual Studio Tools for Office) がありましたが、Apps for Office はそれに追加される機能です。

Microsoft は Apps for Office は VBA や VSTO と競合する機能ではなく補完的な機能であるため、将来的にも VBA や VSTO にゆるソリューションをサポートしていく事を表明しています

タイトルにも書かれていますが、Apps for Office は HTML5 とJavaScript で作成します。と言うより、HTML5 + CSS3 + JavaScript で構成されるモダンな Web アプリケーションが Office アプリケーションの中でホストされ、Office アプリケーションのデータと連携できるようになっていると言っても良いでしょう。実際に Office アプリケーション内で動作している Apps for Office の画面は Web ページです。

以下に VBA、VSTO、Apps for Office を簡単に比較してみました。

 

開発言語

目的

備考

VBA Visual Basic 6.0 風専用言語 ユーザーのアドホックな作業オートメーション Office アプリケーションに
組み込み
VSTO Visual Basic .NET / C# UI のカスタマイズ
Office アプリケーションの機能拡張とオートメーション
.NET Framework
アセンブリとして作成
Apps for Office HTML5 + JavaScript Office アプリケーションの軽量な機能拡張 Web アプリケーション
として作成

より詳しい比較表がこちらの記事中にあります

Apps for Office は XML ファイルとして記述されたアプリ マニフェストと、Web サーバーでホストされる Web ページから成り立っています。

Office 用アプリはマニフェストと Web ページによって構成
(http://msdn.microsoft.com/JA-JP/library/jj220082.aspx から引用)

アプリ マニフェストにはそのアプリの実体となる Web アプリケーションの URL の他、利用可能な Office アプリケーションの種類 (Word 用とか Wxcel 用とかの指定)、アプリに許可される権限などを記述します。ユーザーがこのマニフェストをドキュメントに挿入することで Apps for Office がインストールされ利用可能になります。アプリ マニフェストは Microsoft が運営している Office ストアに登録して公開する他、組織内で独自のアプリ カタログを (Sharepoint やファイル共有により) 公開することもできます。そのため一般向けのアプリとして広く公開する (場合によってはストアの機能を利用して課金する) 事、企業内で独自のアプリを展開する事、どちらも可能です。

Office アプリケーションはアプリ マニフェストがドキュメントに挿入されると、その内容を確認して Web アプリケーションの URL にリクエストを行います。取得された Web アプリケーションは、HTML と JavaScript (と CSS) が Internet Explorer のレンダリング エンジン (Trident) と JavaScript エンジン (Chakra) によってレンダリング / 実行されて動作されます。もちろん Trident や Chakra は Office アプリケーションが作成するサンド ボックス内で実行され、他のアプリケーションや他の Internet Explorer のインスタンスとは分離されます。

Web アプリケーションとして動作する際の機能とパフォーマンスを確保するため、 Apps for Office の利用には Internet Explorer 9 以上が必要です。Windows 7 に Office 2013 をインストールする場合、標準の Internet Explorer 8 ではなく、Internet Explorer 9 以上にアップグレードする必要があります。
また同じ Windows 7 でもインストールされている Internet Explorer のバージョンにより、Apps for Office で利用可能な HTML / CSS / JavaScript の機能に違いが生じます。

このような仕組みで動作するため、Apps for Office では Internet Explorer で利用可能な Web 標準の HTML5 や JavaScript の機能を基本的にすべて利用する事ができます。もちろん jQuery などのライブラリを利用する事も可能です。そのため既存の Web アプリケーションを Apps for Office に再構成する事も難しくありません。

(明日以降続きを追加します)

1件のコメント »

  1. […] ・HTML5 と JavaScript で作る Apps for Office | Hebikuzure’s Tech Memo https://hebikuzure.wordpress.com/2013/12/21/html5-%E3%81%A8-javascript-%E3%81%A7%E4%BD%9C%E3%82%8B-ap… ・Apps for Office サミット!(HTML5, Excel, Word, […]

    ピンバック by [Office用アプリ]Apps for Office サミット!で登壇しました。 | 初心者備忘録 — 2013年12月24日 @ 2:56 午後


RSS feed for comments on this post. TrackBack URI

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト /  変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト /  変更 )

%s と連携中

WordPress.com Blog.

%d人のブロガーが「いいね」をつけました。