ワード・マクロ(VBA)の活用3
3 「WordからWeb情報検索」のマクロの作成と利用
■ Web情報検索のマクロ(VBA)
(1) 手元のWordにおいて,Word画面上の文字を選択し,そのままWeb情報検索をかけるマクロ(VBA)を仕組むには,どうするか。
細かな操作手順になるが,
@ メニューバー「ツール」→「マクロ」→「マクロ」で現れたマクロ・ダイアログボックスで,
A 「マクロの保存先」として,「すべての文書(Normal.dot)」を選択指定し,
B 「マクロ名」欄に「GoogleSearch」と入力し,
C 「作成」ボタンをクリックする。
すると,「Visual Basic Editor」と呼ばれる編集画面が開き,そこに次のような記述が現れる。
Option Explicit
Sub GoogleSearch( )
'
' GoogleSearch Macro
' 作成日 平成22年○月○日 作成者 ○○
'
End Sub
(2) 冒頭の「Option Explicit」は,「Visual Basic Editor」のツール→オプション→編集タブで,「変数の宣言を強制する」にチェックがあるときに表示される。簡単なマクロであれば,変数宣言(Dim)はなくても動作するが,複雑になる場合には,あった方がいい。
「Sub マクロ名( )」に始まり「End Sub」で終わる部分は「プロシージャ」と呼ばれることは,前述したとおりである。
この中で,行の冒頭が「’」で始まり緑色で表示される行は,コメント(注釈)であり,マクロの実行とは関係しない。
目的のマクロは,その下に,次のようなマクロ(赤色表示部分)を書き込めば出来上がる(コピー&ペーストしても可能)。
Option Explicit
Sub GoogleSearch( )
'
' WebSearch Macro
' 作成日 平成22年○月○日 作成者 ○○
'
Dim Search As String
Dim URL As String
Search = Selection
URL = "http://www.google.co.jp/search?q=" & Search
ActiveDocument.FollowHyperlink Address:=URL
End Sub
(3) インターネットに接続された状態で,Wordの画面上で文字を選択した(反転)上で,このマクロを実行すれば,パソコン画面にはグーグルの検索結果が現れる。
マクロの実行は,Wordのメニューバーから,「ツール」→「マクロ」→「マクロ」で現れたマクロ・ダイアログボックスで,「GoogleSearch」を選択し,「実行」ボタンをクリックすればいい。
■ マクロ(VBA)実行の前提
(1) しかし,これで問題なくマクロが動作するか,となると,次のような警告が現れ,目的が達せられない場合がある。
これは,マクロ(VBA)には
コンピュータウィルス
が含まれている場合があることから,マクロ(VBA)が含まれていれば自動的にセキュリティが働くのである。Wordは,原則として,マクロ(VBA)を無効扱いにしている。マクロ(VBA)を機能させるには,これを有効扱いに切り替える必要がある。
(2) その切替えは,Wordのメニューバーの「ツール」→「オプション」で開くオプション画面で,タブ「セキュリティ」をクリックして,その画面で,「マクロのセキュリティ」ボタンをクリックし,
ここで現れる次の画面で,セキュリティレベルを
「
高
」以上(信頼できるマクロだけ実行)から,「
中
」(マクロ実行前に警告する)に変更し,「OK」にするのである。
こうすれば,マクロ(VBA)が含まれたWordを開く都度,パソコンは,事前にマクロ(VBA)を実行してよいかを問い合わせてくる。
(3) ここで一旦Wordを文書の名前を付けて保存し閉じた上,これを再度起動すると,次のような「セキュリティ警告」が現れる。
「マクロを無効にする」ボタンを選択すれば,文書は開くが,マクロは効かない。
「マクロを有効にする」ボタンを選択すれば,以後マクロは有効に機能する。
(4) 自分自身が作成したマクロである限り,「マクロを有効にする」で差し支えないが,他人が作成したファイルでは,マクロを有効にするか否かは,ユーザーのそのファイルに対する信頼性の判断にかかっている。
自ら信頼できると判断できるサイトからのダウンロードでは問題ないが,心配であれば,ウィルス検索ソフトで,念のため,そのファイルをチェックしてから使うのが適切と思われる。
「マクロを有効にする」を選択クリックすれば,前記の文書ファイルにおいて,以後,マクロ・ダイアログボックスで「GoogleSearch」を選択して実行すれば,このマクロは機能する。
2010.7.24 〜
<
|
TOP
|
>
[ HOME ]