エクセルVBAについて質問です。


あるコンピュータで使用できていたマクロ付きのエクセルファイルを他のノートPCで開こうとしたところ、DLLに関するエラーが出て、VBAにおいてRightなどの固有の関数が使えなくなりました。

そこで、アドバイスを参考に調べたところ、原因はツールの参照設定において

参照不可:Ref Edit Control

となっている箇所であることが分かりました。

続いて参照設定のチェックを外そうとしたところ、外して「OK」しても再度参照設定を開くとチェックがされた状態になり、変わらずファイル保存や一部のマクロ実行が不可能でした。

さらに、Webで調べた情報などを元に、.NET FrameWork 3.5をインストール後再起動して再度ファイルを開いてみましたが、VBAエディタを開こうとしたときに同じエラーが出て、開けませんでした。

このエラーを回避する方法ってございますでしょうか?

お気持ちのみですが、合計150Pの質問とさせて頂きます。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2008/12/09 06:09:17
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:ardarim No.3

回答回数897ベストアンサー獲得回数145

ポイント50pt

異なるバージョンで保存されたxlsを開いた場合に、問題が起きてしまう場合があるようです。(必ず起きるというわけではないようなので、何故問題が起きるのかまでは分かりませんが)


現象としては、参照しているRef Edit Controlのファイル場所が正しくないために発生していると考えられます。

ハードディスクを検索して、refedit.dllを探し、参照設定画面の「参照」ボタンで正しいrefedit.dllを読み込んでみてください。

id:ReoReo7

ありがとうございます。

http://72.14.235.132/search?q=cache:ZgErqKtShg0J:www.moug.net/fa...

(Googleのキャッシュで保存されているWeb)

を参考に、

1:ファイルが正常に開けるPCでマクロをエクスポートしてファイルを保存

2:マクロにおいて参照不可なPCでファイルを開き、先ほどのマクロをインポート

によりRefEditControlのチェックを外すことができ、当該問題は当面は解決いたしました。

引き続き回答を募集致しますが、これにて一時解決ということになりました。

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

2008/12/05 08:32:26

その他の回答2件)

id:pahoo No.1

回答回数5960ベストアンサー獲得回数633

ポイント50pt

Excelファイルを作成したコンピュータと、エラーが発生しているコンピュータの各々について、下記の情報をお知らせください。


  1. OSの種類とサービスパック(SP)の番号(例:WindowsXP SP3)
  2. Excelの種類とサービスパック(SP)の番号。OfficeでもOKです。(例:Office 2003 SP2)
  3. VisualStudioなどのMicrosoft系開発ツールが入っていれば、そのバージョン。
id:ReoReo7

ご質問の件、ありがとうございます。下記、回答いたしますので、よろしくお願い致します。

1. WindowsXP SP3

2. Microsoft Office Professional Edition 2003

3. なし

※注釈

1. 正規版です

2. 友人にもらったPCですが、最初からインストールされていました。

2008/12/05 06:42:09
id:airplant No.2

回答回数220ベストアンサー獲得回数49

ポイント50pt

既にpahooさんが回答しているかも知れませんが、次のケースが考えられます。

参照設定で、まずは場所とファイル名を確かめてみてください。


1.REFEDIT.DLL → パスが異なる

 xpとvistaでは、REFEDIT.DLLのパスが異なるようです。

答えてねっと 投稿全文表示


2.MSCAL.ocx → Accessが入っていない

 Accessに入っているカレンダーコントロール(MSCAL.ocx)を参照しているケースもありそうです。

Q&A|Excel (VBA)|Calendar部分が表示されません


もし、使っていないコントロールがフォームなどに貼り付いているのでしたら、この機会に外しておくのが良さそうですね。

id:ReoReo7

ありがとうございます。ご質問の件ですが

1.両PC共XPで、Pathは正常に設定されており、DLLファイルも存在しました。

2.Accessはインストールされているようで、起動もできました。

2008/12/05 06:45:14
id:ardarim No.3

回答回数897ベストアンサー獲得回数145ここでベストアンサー

ポイント50pt

異なるバージョンで保存されたxlsを開いた場合に、問題が起きてしまう場合があるようです。(必ず起きるというわけではないようなので、何故問題が起きるのかまでは分かりませんが)


現象としては、参照しているRef Edit Controlのファイル場所が正しくないために発生していると考えられます。

ハードディスクを検索して、refedit.dllを探し、参照設定画面の「参照」ボタンで正しいrefedit.dllを読み込んでみてください。

id:ReoReo7

ありがとうございます。

http://72.14.235.132/search?q=cache:ZgErqKtShg0J:www.moug.net/fa...

(Googleのキャッシュで保存されているWeb)

を参考に、

1:ファイルが正常に開けるPCでマクロをエクスポートしてファイルを保存

2:マクロにおいて参照不可なPCでファイルを開き、先ほどのマクロをインポート

によりRefEditControlのチェックを外すことができ、当該問題は当面は解決いたしました。

引き続き回答を募集致しますが、これにて一時解決ということになりました。

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

2008/12/05 08:32:26

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません