アプリ版:「スタンプのみでお礼する」機能のリリースについて

Word2003でマクロを作成しました。

WordファイルAにはマクロを保存したくないので、
WordファイルBに保存しています。
このマクロをWordファイルAから起動したいのですができません。
WordファイルAを開き「マクロの実行」ダイアログボックスから
WordファイルB内のマクロを選択して
「実行」ボタンを押して実行したいのですが、
一覧にマクロ名が表示されないのです。

Excelの場合は、ExcelファイルAからExcelファイルBのマクロを
呼び出すことができるのですが、
(例えばブック名!モジュール名.マクロ名)
Wordではできないのでしょうか?
何か設定が必要でしょうか?

ご存知の方がいらっしゃいましたら、
よろしくお願いいたします。

A 回答 (1件)

こんばんは。



>(例えばブック名!モジュール名.マクロ名)
この方法は、私は、Excelの場合のほうが特殊だと思います。
Excelは、モジュールが複雑なので、固有のマクロを呼び出さざるを得ないわけです。

もちろん、Wordでも、Application.Run で呼び出すことは可能ですが、そういうことは、Wordではあまりしません。

Wordの場合は、ActiveDocument にはマクロをいれずに、基本的に、Normal.dot にマクロを入れる構造になっています。だから、Normal.dot(C:\Documents and Settings\[UserName]\Application Data\Microsoft\Templates\ または、...Microsoft\Word\STARTUP\) の標準モジュール等(ローカルモジュール・プロシージャ以外)に入れさえすれば、どこでも呼び出しが出来るようになっています。後者のSTARTUPに入れたほうが加工がしやすいです。

似てはいても、ExcelのPERSONAL.XLS とは、基本的な呼び出しの構造が違います。Wordは自動的に参照設定が組まれています。

他には、テンプレートフォルダ(C:\Documents and Settings\[UserName]\Application Data\Microsoft\Templates\)、テンプレートファイル(.dot)に入れて、メニューのツール-テンプレートとアドインの中で、追加で、dot ファイルを選ぶ方法があります。もしくは、...Microsoft\Word\STARTUP\ にテンプレートファイルを入れることで、呼び出します。

そうでない場合は、A,B の片方を参照設定します。しかし、参照設定すれば、Aを開けば、必ずBが開いてしまいます。

少しフォルダの位置がややこしいですが、良く読んで試してみてください。
    • good
    • 0
この回答へのお礼

Wendy02さん

回答ありがとうございます。
Excelの方が特殊だったんですね。
大変参考になりました。
回答くださった案で試してみたいと思います。
ExcelVBAに比べてWordVBAの情報が少ないので、
とても助かりました。

ありがとうございました。

お礼日時:2008/10/04 18:48

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!