2

問題:

この問題に似ていますが、解決策が見つかりません。このバグを修正する方法を見つけようとしています:

ローカル ウィンドウまたはウォッチ ウィンドウでオブジェクトを表示すると、Excel がクラッシュする

カスタム クラスは ADO 実行のラッパーとして機能するため、別のクラスを使用して SQL コードを維持し、ラッパー内で実行して、MS Access ADO 実行のエラー処理を 1 か所にまとめることができます。

数日前まで、VBA エディターの [ローカル] ウィンドウまたは [ウォッチ] ウィンドウでカスタム クラスのノードを展開しようとすると、5 秒のハング後に Excel がサイレント クラッシュし、ファイルを使用して再起動するまで、これはログ記録とデバッグの目的に最適でした。回復ウィンドウ。

残念ながら、コードは会社の機密事項であるため、貼り付けられない場合がありますが、原因について何か考えがあれば、ソースを見つけて報告できるかもしれません.

他の誰かがこの問題を経験しましたか?

更新: 新しい症状 - 古いビルドと新しいビルドのテキストをデバッグして比較しているときに、ハングが停止した直後とクラッシュが発生する前に、[ローカル] ウィンドウが空になる (すべてのオブジェクトがクリアされる) ことがわかりました。

私が試した修正:

  • VBA プロジェクトを再構築し、すべての既知のコンパイル エラーを修正する (単純な vba エラーを排除するため)
  • すべてのクラスとモジュールのエクスポート - 新しいブックへの再インポート (破損しているブック ファイルを排除するため)
  • クラスとモジュールのテキストをメモ帳にコピーし、すべての書式設定をクリアする - 新しいワークブックに貼り付ける (破損したクラス データを削除するため)
  • 他のカスタム クラスへの参照を無効にして、1 つのクラスに絞り込みます。

私はあなたの助けに感謝し、私の問題が他の人にとってそれを明らかにすることができることを願っています.

4

1 に答える 1

2

以下のことを試すことができます。それらのいずれかがあなたのために働くことを願っています。それでも機能しない場合は、デモ用に同様の問題をシミュレートしてコードを共有するようにお願いします。

  • アドインで発生する可能性のある問題。アドインを削除して(comアドインをアンインストールして)、コードを実行して、まだ問題が発生していないかどうかを確認してください。アドインを無効にすると、クラッシュの原因となるアドインの選択肢を絞り込むことができるため、良いテストになります。

  • ウイルス対策ソフトウェアが最新であるか、Excelと競合していないかを確認してください。ウイルス対策ソフトウェアが最新でない場合、Excelが正しく機能しない可能性があります。

  • Excelの単一インスタンスでマクロを実行し、まだ問題が発生していないかどうかを確認してください。単一のインスタンスとは、タスクマネージャーの[プロセス]タブに移動すると、excel.exeの画像名が1つだけ表示されることを意味します。

  • 最新のウィンドウアップデートを確認/インストールします

  • 他のPCまたは他のバージョンのExcelで同じマクロを実行してみてください

  • mztools andinを使用して、コードを確認してください

于 2013-03-20T16:58:36.037 に答える