ms accessのvbaエディタの
イミディエイトウィンドウから
その時点でvbaエディタで開いている
コード編集ウィンドウをすべて閉じる,
というようなことはできるのでしょうか?
vbaエディタ画面の左側の
オブジェクト一覧からできるのでしょうか?
↓
はい、イミディエイトウィンドウから、
現在開いているすべてのコード編集ウィンドウを閉じることが可能です。
VBAエディタでは、`VBE`オブジェクトを使用して、
開いているコードウィンドウを管理できます。
以下のコードをイミディエイトウィンドウに入力して実行すると、
すべてのコードウィンドウを閉じることができます。
### イミディエイトウィンドウで実行:
```vba
Dim comp As VBIDE.VBComponent
For Each comp In Application.VBE.VBProjects(1).VBComponents
DoCmd.RunCommand acCmdClose
Next comp
```
または、すべてのコードウィンドウを閉じるために以下のコードを使います。
```vba
Dim wnd As VBIDE.Window
For Each wnd In Application.VBE.Windows
If wnd.Type = vbext_wt_CodeWindow Then
wnd.Close
End If
Next wnd
```
### 説明:
- `Application.VBE.Windows` を使い、
すべてのVBAエディタのウィンドウをループ処理します。
- `If wnd.Type = vbext_wt_CodeWindow Then` により、
コードウィンドウのみを閉じます。
- `wnd.Close` でコードウィンドウを閉じます。
#### **オブジェクト一覧(VBAProject Explorer)から閉じる方法**
- VBAエディタの **プロジェクトエクスプローラー**(`Ctrl + R` で表示)で、
特定のモジュールを右クリックし、「閉じる」を選択することで、
個別に閉じることができます。
イミディエイトウィンドウからまとめて閉じるには、
上記のコードを使用するのが便利です。
コメント
コメントを投稿