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

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

注: AutoLISP はドキュメント内からでしか実行できないため、AutoLISP プログラムではドキュメントが存在しないという状態はありません。

AutoCAD ユーザ インタフェースのドキュメントをすべて閉じると、アプリケーション ウィンドウの外観が少し変わります。インタフェースは次のように縮小して表示されます。

注: すべてのドキュメントを閉じた場合、リボン、ツールバー、コマンド ラインを使用することはできません。

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 に接続できます。