hatena
hatena
2019/04/05 (金) 15:06:42
下記のコードでどうでしょう。
Public Sub CloseAllForm()
Dim i As Long
For i = Forms.Count - 1 To 0 Step -1
If Forms(i).Name <> "フォームA" And Forms(i).Name <> "フォームB" Then
DoCmd.Close acForm, Forms(i).Name
End If
Next
End Sub
Forms(0から始まるインデックス) で開いているフォームを参照できます。
インデックスの最後から削除しているのは、前から削除すると削除したとき、インデックスが前にずれるので、
削除されずにのこるフォームが出てくるためです。
通報 ...
hatena様
思い通りの仕組みになりました!
本当にありがとうございます。