【Windows】"読み込み中にエラーが発生しました"がExcel でフォーム読み込み時に発生する原因と対処

Excel フォームで読み込み中にエラーが発生しました


Microsoft Excel 環境において作成したフォームを他のExcel ファイルに読み込ませるためメニューより「ファイルのエクスポート」を選択しUserForm1.frm (フォームモジュール *.frm)としてファイルをPC上に保存しました。
この操作はMicrosoft Visual Basic for Applications で行いました。

その後他のExcelファイルを開いてMicrosoft Visual Basic for Applicationsを起動して「ファイルのインポート」メニューにより先ほどの frm ファイルを読み込ませたところ次のエラーが発生しました。


読み込み中にエラーが発生しました
(フォーム名は)ロードされません。Nameは既に使用されています。



Excelで ユーザフォームがロードできない



ログファイル(C:\Users\(ユーザ名)\Documents\UserForm1.log)を見ると以下のエラーが記録されています。

行 2: フォーム名または MDI フォーム名 UserForm1 は既に使われています。



原因と解決


読み込もうとしたフォームがすでにそのExcel シートにあるのが原因でした。要するに Name がバッティングしているのが問題でした。
バッティングしないように、既存のフォームの Name を変更するのが解決方法です。

左下の(オブジェクト名)を変更します。
例えばデフォルトのNameである"UserForm1"を他の名前に変更してNameが重複しないように注意します。

Excelで UserFormロード失敗の対処



以上で無事インポートできるようになると思います。





Windowsのよくある質問 FAQ




個人的に独自に調査した事項をまとめています。各ベンダーとは全く関係がありません。
内容に誤りがある場合や情報が古くなっている場合があります。その場合でも修正されるとは限りません。
参考としてサイト閲覧ください。万が一誤りがあり損失等が発生しても保証しません。あくまでも自己責任でサイトを閲覧ください。