0

したがって、これは以前は決して起こらなかったものであり、現在では毎回行われています。

現在、RTD サーバーはテスト目的でオフになっており、Excel が実際に行う必要があるのは #N/A を吐き出すことだけです。奇妙なことに、正常に動作し、偽/間違った progID では失敗しますが、正しいもの (サーバーはまだオフ) ではハングしてフリーズします。

=RTD("正しいプログラム",,"テスト")

上記はExcelをフリーズさせます。RTDと通信し、RTDがオンになり、想定どおりに動作します.Excelだけがフリーズしています

=RTD("wrong.prog",,"TEST2")

上記はExcelに対して何もせず、Excelは想定されていることを行い、#N/Aを出力します

4

1 に答える 1

0

シンプルなものを見落としているに違いない。ここにいくつかのアイデアがあります:

  1. Parentwindow なしで ShowDialog() を呼び出しますか。Alt+Tab を押すと、背面にウィンドウがあるかどうかを確認できます。

  2. デバッグ中に一時停止を押すと、デバッガーでコード コントロールが停止しましたか?

a) 実行された場合は、コードをデバッグします。それは無限ループかもしれません。
b) コードでデバッガーが停止しなかった場合は、ハング/フリーズ状態で表示されるようにする Excel 設定を無効にしていないことを再確認してください。

xlApp.ScreenUpdating = true;
xlApp.DisplayAlerts = true;
xlApp.UserControl = true;
xlApp.EnableEvents = true;
于 2012-10-11T04:00:43.013 に答える