概要 - ドキュメントが開かれていない状態で作業する(VBA/ActiveX)

AutoCAD は常に、新規ドキュメントまたは既存のドキュメントを開いて起動します。ただし、現在のセッションですべてのドキュメントを閉じてしまうことができます。

AutoCAD ユーザ インタフェースのドキュメントをすべて閉じると、アプリケーション ウィンドウの外観が少し変わります。使用可能なメニューが[ファイル]、[表示]、[ウィンドウ]、[ヘルプ]の 4 つに減少します。またこれらのメニューで使用可能なオプションの数も減少します。さらにコマンド ラインが表示されなくなります。

ActiveX インタフェースでは、ドキュメントが開かれていないと、以下のアクションしか実行できません。

これらのアクションはすべて、Documents コレクションから実行することができます。Application オブジェクトのメソッドとプロパティの特定のセットに加えて、Documents コレクションのメソッドとプロパティは、開かれたドキュメントが存在しない場合にのみ使用可能なインタフェースです。ユーザ オプションにアクセスするといった、その他のアクションを実行しようとするとエラーになります。

AutoCAD がドキュメント 0 の状態かどうかを確認するには、Documents コレクションの Count プロパティを使用します。Documents.Count = 0 の場合、AutoCAD はドキュメント 0 の状態です。Documents.Count > 0 の場合、1 つ以上のドキュメントが存在します。

VBA では、AutoCAD がドキュメント 0 の状態のときには ThisDrawing オブジェクトが定義されないことに注意してください。これは、ThisDrawing は通常、アクティブな図面を参照し、ドキュメント 0 の状態では開かれた図面が存在しないからです。ThisDrawing を使用するマクロを実行しようとすると、ランタイム エラーになります。エラーを避けるために、VBA GetObject 関数を使用し、AutoCAD のバージョンを指定すれば、開かれたドキュメントがない場合に AutoCAD に接続できます。