• 締切済み

EXCELVBAのコンパイルエラーについて

EXCEL-2002でVBA作成をした物をメールで送信後受信側で起動さ せるとコンパイルエラーになり正常起動しません。 現象としてはコンパイルエラーのメッセージボックスにプロジェクトまたはラ イブラリが見つかりませんと出てきます。OKを選ぶと参照設定ーVBAPr ojectのウインドウが開きOkを選択するとC:\program files\common fi les\microsoft shared\VBA\VEjpUI3.HLPファイルが見つかりません。このファ イルを自分で探しますか?のメッセージが出てきます。何か環境設定上の問題 があるのでしょうか教えてください。ちなみに受信側のOFFICEもXPで す。よろしくお願いいたします。

みんなの回答

noname#102878
noname#102878
回答No.4

参照不可を解消しないとエラーは直りませんよ。 開発環境のPCでそのファイルを開き、VBEより[ツール]-[参照設定]のダイアログを開く。 「参照可能なライブラリ」でチェックが入っているライブラリの名前を控える。 相手のPCでそのファイルを開き、VBEより同様にライブラリを確認する。 参照不可になっていないライブラリの名前を控える。 必然的に「参照不可」になっているライブラリがわかる。 そのライブラリ名をここで明かしてくれれば的確な回答ができるかもしれません。 明かしていただけないのなら想像で書くしかありませんが。 ちなみに #2で私が書いた「最初から選択されているコンポーネント」ですが、私の環境はOffice2000Developerではありますが、一応ここに書きます。 Visual Basic For Applications Microsoft Excel 9.0 Object Library OLE Automation Microsoft Office 9.0 Object Library 以上4点です。 Excel2002なら9.0じゃなくて10.0になってるのかな。 さて、何が参照不可になっていますか?

mikurin
質問者

お礼

不要なコンポーネントを削除したら解決しました。 ありがとうございました。

回答No.3

すいません、途中参加しますがmikurinの代理です。参照可能なプロジェクトは同じになっております。その他考えられることはありますでしょうか?

noname#102878
noname#102878
回答No.2

参照不可になっているコンポーネントは基本的な物でしょうか? 基本的、と言ったのは、Excelを普通に起動してVBEを起動して、最初から参照設定されているコンポーネントのことです。 もしあとから参照を設定したものであったとして、そのコンポーネントの機能を使用していますでしょうか? 私の失敗談のように、最終的に一切使用していないコンポーネントであれば参照を外して相手に渡してください。 参照不可の状態で使用すると、基本的なVB関数など、変な所でエラーが頻発したりします。 もしそのコンポーネントが必要であれば相手にインストールしてもらうしかないでしょうね。 ちなみに参照不可になっているのはなんていうコンポーネントですか?

noname#102878
noname#102878
回答No.1

双方ともOffice2002。 インストールのオプションも同じですか? 例えば相手はOutlook2002をインストールしていないとか、VBAのヘルプをインストールしていないとか。 おそらくそんなところなんじゃないかと思います。 あと、ちょっとだけ気になったのですが、相手のPCでファイルを開こうとすると参照設定のダイアログが表示されますよね? その中で「参照不可」となっている項目はありませんか? あれば、それが相手のPCで足らないものなのです。 開発PCの参照設定で標準以外のものにチェックを入れたまま別のPCへ持っていくと、相手のPCで同じファイルがインストールされていないとエラーになります。 過去の私の失敗では、開発中にIEのコンポーネントの機能を使おうと思ってIEのブラウザコントロールにチェックを入れたが、結局IEの機能を使用することはなかった。 それを忘れてチェックを外さないまま納品したが、相手のPCはNC派だったのでIE3.02しかインストールされておらず、エラー出まくりのへんてこxlsになってしまった。

mikurin
質問者

お礼

ありがとうございます。おっしゃるように確かに参照不可のものがあります。何かは分からないのですが。一つ一つ確認するしかないのでしょうね。。。根気よく探してみます。またよろしくお願いいたします。

関連するQ&A