ms access vba イミディエイトウィンドウ 現在開いているフォームの名前を表示

 ms accessの vbエディタ内の

イミディエイトウィンドウ(Ctrl + G)

で、現在開いている accessのファイルに関する操作ができるそうですが、


イミディエイトウィンドウに vbのコードを入力して、


そのaccessファイル内でその時点で開いているフォームの名前を

取得することはできるのでしょうか?



はい、イミディエイトウィンドウで、

現在開いている Access のファイル内で 

**開いているフォームの名前** を取得できます。


## 方法


イミディエイトウィンドウで、以下のコードを入力して

 **Enter** を押すと、開いているフォームの名前が表示されます。


```vba

? CurrentProject.AllForms(0).Name

```


しかし、これは **全てのフォームの一覧** から

最初のものを取得する方法なので、  

**現在開いているフォームのみ** を取得する場合は、


以下のコードを使います。


### **現在開いているフォーム名をすべて取得**


```vba


Dim frm As Object

For Each frm In Application.Forms

    Debug.Print frm.Name

Next


```

イミディエイトウィンドウで実行すると、

開いているフォームの名前が表示されます。


### **イミディエイトウィンドウで一発表示**


単に開いているフォームのリストを取得したい場合、

イミディエイトウィンドウに以下を入力すればOKです。


```vba


For Each frm In Application.Forms : Debug.Print frm.Name : Next


```


#### **補足**


- `Application.Forms` は現在開いているフォームのコレクションを表します。


- `Debug.Print frm.Name` はフォーム名を出力する処理です。



この方法で **現在開いているフォームの名前** を取得できます!


コメント