Excelがクラッシュする
[Q] XLPackを使用したプログラムを実行したり, ワークシート関数を使用すると, Excelがクラッシュする (突然終了する, オートメーションのエラーになるなど).
[A] 代表的な原因としては以下のケースがあります.
(1) ワークシート関数ではなく誤ってVBA関数をワークシートから呼び出すとクラッシュする
FAQ「ワークシート関数が動作しない」を参照ください.
(2) ユーザー定義外部ルーチンの誤りによりVBAプログラムがクラッシュする
数値積分, 常微分方程式, 非線形方程式などではユーザー定義外部ルーチンが必要ですが, その引数の数や型, 戻り値の型(関数の場合)などの定義はマニュアル通りに正確に行う必要があります. ユーザーが定義したルーチンのアドレスがAddressof演算子を使ってXLPackに渡されますが, VBAによって引数の正当性のチェックは行われません. 渡されたアドレスの外部ルーチンが正しく定義されているものとして呼び出しを行うため, 定義が誤っているとExcelがクラッシュしたり誤った解を返したりすることがあります. これについては, 注意深く外部ルーチンを作成するか, 代わりにリバースコミュニケーション版を使用してこれを回避する必要があります.
(3) 特殊関数のワークシート関数のバグ
XLPack 6.0.5 または 6.0.6 を32ビット版Excelで使用している場合, 特殊関数のワークシート関数がクラッシュすることがあります. お手数ですが, 6.0.10版以降に更新してください. 更新方法は以下を参照ください.