VBA】Setでワークブックを変数に割り当て(オートメーションエラーの発生事例)VBAExcelのVBAを使って作業を自動化する際、ワークブックを変数に割り当てることはよくあります。このとき、変数が不要になったらSetステートメントでNothingを実施しておかないと、次のような"オートメーションエラー"が発生することがあります。オートメーションエラーは、重いデータ処理や、メモリ不足等が原因にもなるようなので、エラーの一例として示します。次のように、モジュールレベルの変数でワークブックを割り当て、最後にSetステートメントでNothingを実施していないケースでは注意が必要でした。このケースでは、1回目の実行は問題なく動作し、2回目でオートメーションエラーが発生しました。Nothing」の分岐で意図しない処理となるためです。オートメーションエラーが発生したコード例なお、プロシージャ内で変数を宣言している場合は、SetステートメントでNothingを実施していなくても、プロシージャの終了とともにオブジェクトへの参照が解除されました。要は、プロシージャの終了だけでオブジェクトへの参照が解除されるものではないので、必要に応じてSetステートメントでNothingが必要という一例でした。引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。