特 別 寄 稿

WE SPEAK SOAP

第3回

Wordから使う
辞書検索
ウェブサービス

XMLウェブサービス
ビジネスとテクノロジーの新たな変革

篠原 慶

Visual Stadio .NETのような本格的なプログラミングツールがなくても、日ごろ使っているOffice XPからウェブサービスを手軽に利用することができる。今回はWordで、文書内にある単語の意味を調べる辞書検索機能を、ウェブサービスを使って実現するプログ
ラムを紹介する。

英和、和英、国語のXP Web Services Toolkit（ WSTK）を3つの辞書を利用使えば、ウェブサービスを利用したVBAプログラムも作ることができる。

るだろう。
今回は、株式会社イーストが実験的に公開しているウェブサービスの「三省堂Word 2002にも 、Excelや AccessとWord 2002の VBAも 、基 本 的 に はデイリーコンサイス体験版」をWord 2002

同じようにVBAが搭載されており、工夫Excelや Access、Visual Basic 6.0と同から利用するプログラムを紹介する。

しだいでは単なるマクロを超えた本格的じだ。過去にこれらの経験があれば、このサービスは、3種類の三省堂デイリなプログラムを作ることができる。Office

Word VBA独特の部分にもすぐに慣れーコンサイス辞典（英和、和英、国語）がサンプルプログラムの作成と実行に必要なもの●事前にインストールしておくもの
1. Office XPまたはWord 2002（SP2以降）
2. Office XP Web Services Toolkit 2.0
http://www.microsoft.com/japan/office/developer/webservices/download.asp●利用するウェブサービスと情報
3. ウェブサービス
http://btonic.est.co.jp/NetDic/NetDicv06.asmx

4. インターフェイス定義（WSDL）
http://btonic.est.co.jp/NetDic/NetDicv06.asmx?WSDL

5. XMLウェブサービス対応三省堂デイリーコンサイス体験版
http://www.btonic.com/ws/●今回のサンプルプログラム
http://internet.impress.co.jp/im/xmlwebservices/
図1

228 +++ iNTERNET magazine 2003.05 +++イーストが提供するXMLウェブサービス対応「三省堂デイリーコンサイス体験版

インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&Dコマンドバーが表示されるので、左の［設定］ボタンをクリックする。下のような［設定］ダイアログが表示されるので、利用したい辞書を選択して［確定］ボタンをクリックする。

コマンドバーの［検索］ボタン（右）をクリックする。

［検索結果］
ダイアログに、辞書検索ウェブサー
ビスを使って調べられた単語の意味（訳）が表示される。

文書内のテキストで、意味（訳）を調べたい単語を選択する。

図2

サンプルプログラム「NetDic」の操作

ウェブサービスとして公開されているもサンプルプログラム（マクロ）が含まれWordを起動すると、NetDicサンプル

ので、クライアントからの要求を受け、ている NetDic.DOT ファイルを、本連載のコマンドボタンが表示されるはずだ。

XML検索エンジン（BTONIC）が動作し、のサポートページからダウンロードする

まず、
［設定］
コマンドボタンをクリックし、任意の辞書データベースからの結果を生（228ページを参照）。

英和、国語、和英辞典の中から1つを選成し、クライアントに戻すというものだ。

Wordの起動時にプログラムが自動的択する。文書中の単語を選択し、［検索］ウェブサービスの辞書を使うメリットに読み込まれるように、NetDic.DOTフ

コマンドボタンをクリックすると、結果がは、辞書データの保守と管理を一元化でァイルをstartupディレクトリーにコピーす表示される（図2）。

きる点と、それをローカルにあるコンポる。Office XPの既定どおりに Cドライ

NetDicの機能を停止するには、Wordーネントと同じような感覚で簡単にOffice

ブへインストールした場合、startupディを終了後、startupディレクトリーにあるXPアプリケーションの一機能として組みレクトリーは次の場所になる。

NetDic.DOTを削除すればよい。それで込めるという点にある。

C:¥Program Files¥

もNetDicツールバーが残るようなら、［ツMicrosoft Office¥Office10¥Startupール］メニューから［ユーザー設定］を選サンプルプログラムの使い方
では、実際にサンプルプログラムを使っ■マクロのセキュリティー設定てみて、Word 2002とXMLウェブサー
ビスの連携を体験してみよう。このプログ

VBAマクロのセキュリティー設定に注意しよう。セキュリティーレベルを「中」か「低」ラムの実行は、Office XP（SP3以降）
まにしないと、NetDicプログラムが実行できない場合がある。また、Wordの起動時にた は Word 2002、 Office XP Web
Services Toolkit 2.0がインストールされていることが前提なので、事前に確認すマクロに対する警告のダイアログボックスが表示される場合は、［マクロを有効にする］
ボタンをクリックする。NetDicサンプルを起動するたびにダイアログボックスが表示されて煩わしい場合は、デジタル署名を付加するとよい。デジタル署名の詳細については、Wordのヘルプを参照してほしい。

ること。

インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&D+++ iNTERNET magazine 2003.05 +++

229

び、
［ユーザー設定］
ダイアログボックスの［ ツール バ ー ］タブ のリスト 内 に あ る
NetDicを選択し、右側の［削除］ボタンをクリックする。

ウェブサービスの指定とWSDLの読み込み
ここで 少 し 難 し い 内 容 に な る が 、WordでXMLウェブサービスを利用するプログラムを自分で作る場合の解説をし
図3 ［ツール］
メニューに追加された［Web Service References］を選択ておこう。ダウンロードしたNetDic.DOT
ファイルを利用するだけならば、ここに書かれた内容を実行する必要はない。
まず新規の文書を「NetDic.DOT」という名前の DOT 形式ファイルで保存し、Visual Basic Editorを開く。
次にウェブサービスのWSDLを読み込む必要がある。WSTKをインストールすると、［ツール］メニューに［Web ServiceReferences］という項目が追加されているはずだ。もしなければ、WSTKがインストールされているかどうかを確認してみよう（図3）。
［Web Service References Tool］
ダイア
ログボックスが表示されるので、今回利図4利用するウェブサービスを指定用する「三省堂デイリーコンサイス体験版」
ウェブサービスのWSDLファイルのURL「http://btonic.est.co.jp/NetDic/NetDicv■アドインファイルにする理由

06.asmx?WSDL」を入力して検索し、表示されたメソッドを追加する（図4）。その際 、ウェブ サ ービスを 読 み 込 む 前 に 、今回の辞書検索機能は、このプログラムを記述した1つの文書だけで使えるというのではなく、Wordで扱う文書ではいつでも使えるようにしたい。また、実行する条件

Visual Basic Editorの左側にある［プロ（WSTKのインストールやインターネットにつながっていることなど）もあるため、人にジェクト］ウィンドウで、今回作成する渡すファイルにはマクロは含まれていないほうがよいだろう。

WordアドインのNetDicプロジェクトを選

これらのことを考えると、通常のWord文書ファイル（拡張子DOC）のままでは都合択しているかを確認しておくこと。

が悪い。そこで、プログラムを含むファイルは、Wordのアドインファイル（拡張子がVisual Basic Editorに戻ると、新たにDOT）にし、アクティブな文書を対象にコマンドボタンなどを使用して、そのプログラ追加されたウェブサービスが、クラスモムを呼び出すようにする。そうすると、自分の環境ではいつでも辞書検索機能が使ジュールとして登録される。プログラムを組むうえで、これらのファイルを意識する必要はなく、今後プログラム内でこのえ、ファイル自体は普通の文書ファイルのままなので使い勝手がよくなる。
アドインファイルと言っても、特別なことをするわけではなく、普通に新しい文書を作成し、それを保存するときに拡張子を「DOT」にして、指定されたディレクトリー（C:¥Program Files¥Microsoft Office¥Office10¥Startup）に置くだけだ。

ウェ ブ サ ー ビ ス を 使 うに は 、単 にclsws̲NetDicV06オブジェクトを呼び出

230 +++ iNTERNET magazine 2003.05 +++インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&D

WE SPEAK SOAP

辞書検索サービスを提供するサーバー

1.
http://btonic.est.co.jp/NetDic/NetDicv06.asmx?WSDL
でアクセスして、XMLウェブサービスとして利用できる機能の情報を要求する。

辞書XML
ウェブサービス2.
利用できるサービスとして、利用できる辞書を選択したり辞書を検索したりする機能が詰め込まれたオブジェクトを得る。

4.
XMLウェブサービスで要求された辞書検索を実行する。

3.
オブジェクトが持つ機能を使って、単語の検索を依頼する。

5.
XMLウェブサービスで返された検索結果を表示する。

Word＋Web Services Toolkit
図5

このプログラムでは実際の辞書検索はサーバー側で実行しているして、メソッドを実行させるだけでよい。

また、今回のように第三者が公開してにある辞書サービスを扱うネットワークプ

あとは通常のWord用VBAプログラムをいる（特に実験目的で提供しているようログラムの1つと言える。しかし、従来の作る場合と同じだ。

な）
ウェブサービスを利用する場合は、サネットワークプログラミングにあった難しービスの仕様が突然変更されたり、場合さを WSTK がラッピングしてくれるおか

によってはサービスそのものが利用できげで、ローカルにあるコンポーネントと同まとめなくなるという可能性も想定しておく必要じような感覚でできてしまう（ただし、設がある。そのため、プログラムは、でき計はウェブサービスを意識する必要があ

るだけシンプルに組んでおき、変更に対る）。アプリケーションから簡単に呼び出するプログラムを作ることは、VBA やして柔軟に対応できるようにしておくとよ

せて、どこにあるかも意識する必要がな

VB6でプログラムを作れるスキルがあれいだろう。

いという、ウェブサービスの特長が実感

Office XPからウェブサービスを利用ば、決して難しいことではない。今回紹できたはずだ。

プログラミング的には、インターネット上介したプログラムは、辞書ウェブサービ
スを使った簡単なプログラムだが、さらに自分の好みに合わせて拡張することも簡単だろう。たとえば、検索オプション（「完全一致」「部分一致」「前方一致」など）を［設定］ダイアログボックスで指定可

月刊.NETテクノロジー 4月号 好評発売中

能にしたり、単語が見つからないときに、「Content Management Server 2002
特集：自動的に別のオプションで検索するよう〜効率的企業ウェブ管理の最前線」にするなど、もっと実用的に変えられる

定価1,400円かもしれない。さらに、辞書ウェブサー

全国有名書店で発売中
http://dotnet.impress.co.jp/

ビスを自分で提供できるなら、社内ドキュメント用の用語辞書といったソリューションも考えられるだろう。

インターネットマガジン／株式会社インプレスR&D©1994-2007 Impress R&D+++ iNTERNET magazine 2003.05 +++231

［インターネットマガジン バックナンバーアーカイブ］ ご利用上の注意
この PDF ファイルは、株式会社インプレス R&D（株式会社インプレスから分割）が 1994 年～2006 年まで発行した月刊誌『インターネットマガジン』の誌面を PDF 化し、「インターネットマガジン バックナンバーアーカイブ」として以下のウェブサイト「All-in-One INTERNET magazine 2.0」で公開しているものです。

http://i.impressRD.jp/bn
このファイルをご利用いただくにあたり、下記の注意事項を必ずお読みください。
z 記載されている内容（技術解説、URL、団体・企業名、商品名、価格、プレゼント募集、アンケートなど）は発行当時のものです。
z 収録されている内容は著作権法上の保護を受けています。著作権はそれぞれの記事の著作者（執筆者、写真の撮影者、イラストの作成者、編集部など）が保持しています。
z 著作者から許諾が得られなかった著作物は収録されていない場合があります。
z このファイルやその内容を改変したり、商用を目的として再利用することはできません。あくまで個人や企業の非商用利用での閲覧、複製、送信に限られます。
z 収録されている内容を何らかの媒体に引用としてご利用する際は、出典として媒体名および月号、該当ページ番号、発行元（株式会社インプレス R&D）、コピーライトなどの情報をご明記ください。
z オリジナルの雑誌の発行時点では、株式会社インプレス R&D（当時は株式会社インプレス）と著作権者は内容が正確なものであるように最大限に努めましたが、すべての情報が完全に正確であることは保証できません。このファイルの内容に起因する直接的および間接的な損害に対して、一切の責任を負いません。お客様個人の責任においてご利用ください。

このファイルに関するお問い合わせ先
All-in-One INTERNET magazine 編集部
im-info@impress.co.jp
Copyright © 1994-2007 Impress R&D, an Impress Group company. All rights reserved.