Use this to close all open forms
Private Sub Form_Unload(Cancel As Integer)
Dim f As Form
For Each f In Forms
Unload f
Next
End Sub
As for your controls issue, how many controls do you have on a form? You can overcome the limit by using control arrays and/or dynamically creating controls at runtime.