プロが教えるわが家の防犯対策術!

エクセルのマクロが入ったファイルが、海外のPC(OS,ソフトとも英語版)で開けませんでした。
日本では普通にマクロ実行出来ます。
セキュリティは「中」に設定しています。

<オリジナル>
Microsoft Office 2003 Professional   日本語   動作良好
<外国PC>
Microsoft Office 2003 Professional English     動作良好
Microsoft Office 2003 Standard English       動作不良
Microsoft Office 2000 Standard English SR-1   動作不良

ファイルを開いた時(マクロを実行する前)に、下記メッセージが表示されます。

Name conflicts with existing module,project, or object library

Repairs to 'ファイル名’
Lost Visual Basic project
Lost ActiveX controls

解決方法を教えて下さい。

A 回答 (1件)

「既存のモジュール、プロジェクト、または、オブジェクトライブラリで、名前が衝突している」と言うエラーです。



同じOfficeと言っても、日本語版と英語版では、予約語が異なっていたり、識別子の名前で使える文字が違ったりします。

ですので、ある変数や関数の名前が、日本語版では使用出来るのに、英語版では予約語になっていて使えない、と言う事が起きます。

また、同じ日本語版でも、ProfessionalバージョンとStandardバージョンの間で、同様の事が起きます。

どうやら、日本語版と英語版のProでは動いていて、Standardで動いてないようなので、日本語版のstanderdバージョンを用意してファイルを開き、マクロエディタ(VBエディタ)の画面を呼び出して、開いているプロジェクトのマクロを、すべてコンパイルしてみて下さい。

名前が衝突してコンパイル出来ない場合、出来ない原因になっている場所が強調表示され、何が悪いか(どの名前が衝突の原因か)突き止められる筈です。
    • good
    • 1
この回答へのお礼

ありがとうございます。
ただ、Standardバージョンがこちらにないので、検証出来ません。
環境を整えた場合、ProfessionalバージョンとStandardバージョンを別に作らないといけないのでしょうか?
(全ての台数を同じVer.にするのは、難しいので)
すみませんがご教示願います。

お礼日時:2008/08/27 15:53

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

このQ&Aを見た人はこんなQ&Aも見ています