• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel VBA: UserForm.Show で実行時エラー)

Excel VBA: UserForm.Show で実行時エラー

このQ&Aのポイント
  • ExcelのVBAを使用してUserFormを表示する際に実行時エラーが発生します。
  • ExcelのVBEを使用してUserFormを表示すると正常に表示されますが、VBAから表示するとエラーが発生します。
  • 回避策を知りたいです。OSはWindows XP SP2、Officeは2007です。

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。 原因不明なエラーで悩んだときの最初のチェック項目は、「参照設定」 です。参照不可項目があるとき、無関係にみえる場所でもエラーが 発生しますので。 次に、根拠の薄い話。 まずは、確認済み事項から。 えーと、Office の VBA プロジェクトはコンパイルを重ねると序々に ファイルのサイズが肥大化します。例えば、モジュール内のプロシー シャを全て削除しても、逆にファイルサイズが増える場合があるという ことです。   # 確か、確認したのは Win98SE + Excel2002 環境だったかな ここからは、推測(私見)。 プロシージャを減らしたのに、ファイルサイズが肥大化するということ は、修正にともなう何らかの残骸が残る、例えば、コンパイル時に消去 されるべきものが消去されず、蓄積されていくというイメージですよね。 この現象については資料が見つからず、確かなことが私にはわかり ませんが、VBA プロジェクトの動作に何らかの悪影響を与える可能性は あるわけです。 したがって、私はある一定の作業量を超えたら、モジュールをエクス ポートし、再インポートのリフレッシュ作業を行います。   # つまり、コンパイラに問題があるのではないかと   # ちなみに、VBA は純粋なインタプリタ言語ではありません   # Pコードという中間言語にコンパイルされて実行されます 以上が私の私見&経験則。   # この話は数年前の経験に基づき書いてます。現在では   # フィックスされていてのかもしれません。 長々書きましたが、次点のアドバイスとして再インポート^^;

TYWalker
質問者

お礼

ありがとうございます! 「参照」はややこしいので使っていませんでした (^^) 全エクスポート、新規ブック作成、再インポートでバッチリでした。 エラー番号でググったところ、過去に別のエクセルの別のウィジェットで同じ現象になって MS がフィックスしたそうです。 よってこの現象もそのうち対策されるでしょう。 ありがとうございました!

関連するQ&A