- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:アクセス フォームが存在するかを一発で取得したい)
VBAを使用してアクセスフォームの存在を一発で取得する方法
このQ&Aのポイント
- VBAを使用してアクセスフォームの存在を一発で取得する方法を教えてください。
- 現在のコードでは、すべてのフォームをループしているため、効率が悪いです。改善策を教えてください。
- アクセスフォームの存在を効率的に取得するためのVBAコードを教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
おそらくそういった方法でループしてチェックするしかないと思います。 50個というと多いような気がしますが、コンピュータにとっては一瞬の処理ですからそれほど気にしなくてもよいかと思います。 おわかりのことかもしれませんが、その処理を関数化すれば If CurrentProject.AllForms("フォーム1").IsLoaded Then と同じように使えますよ。 以下の関数を作る Public Function ExistsForm(ByVal formName As String) As Boolean Dim f As Object For Each f In CurrentProject.AllForms If f.Name = formName Then ExistsForm = True Exit Function End If Next End Function これを if ExistsForm("フォーム1") then のように呼びだせば、フォームの存在をチェックできます。
その他の回答 (1)
- nicotinism
- ベストアンサー率70% (1019/1452)
回答No.2
dcount("*" ,"msysObjects","type = -32768 and name = 'チェックしたいフォーム名'") では。 http://www.nurs.or.jp/~ppoy/access/access/acQ017.html ↑解説はこちらにて。
質問者
お礼
ありがとうございます。
お礼
ありがとうございます。