2
VSTOアプリケーションに、アクティブブック内のVBAマクロを実行するリボンと、マクロの結果を表示するメッセージダイアログがあります。VBA関数の呼び出し中にActiveWorkbook.CloseがクラッシュするExcel
通常、マクロは正常に実行され、その結果がダイアログに正しく表示されます。
ただし、マクロにActiveWorkbook.Close
が含まれると、マクロを実行すると例外(0x800A9C68)がスローされます。
私のコードでは、マクロはc# - How to Call Excel VBA functions from VSTO Application addin - Stack Overflowとして提案されています。
ご協力いただければ幸いです! ありがとう、
マクロ内のブックを閉じるべきではありません –
問題は、VSTOアプリケーションインスタンスがブック内のマクロにアクセスし、マクロが終了するのを待っていますが、マクロが終了しないように、そのマクロへのアクセスがすぐに失われ、そのVSTOアプリケーションのクラッシュが発生します。フラグが設定されている場合は、マクロ内にフラグを設定し、[VSTOからブックを閉じる](https://msdn.microsoft.com/en-us/library/cd8yh918.aspx)を設定する方が良いと思います。 –