Cómo saber si un formulario esta cargado en memoria


1. Crear un nuevo proyecto en Visual Basic, por defecto será form1

2. Crear un segundo proyecto en Visual Basic, por defecto será form2

3. Crear un tercer proyecto en Visual Basic, por defecto será form3

4. Añadir el siguiente código a Form_load del form1:

Private Sub Form_Load()
Form2.Show
End Sub

5. Añadir un control Command Button al Form1, por defecto será Command1

6. Añadir el siguiente código al evento click de Command1

Private Sub Command1_Click()
Dim X As Integer
X = IsFormLoaded(Form2)
If X Then MsgBox "El Formulario 2 está cargado en memoria"
X = IsFormLoaded(Form3)
If X = False Then MsgBox "El Formulario 3 no está cargado en memoria"
End Sub

7. Crear una nueva función y llamarla IsFormLoaded. Añadir el siguiente código a la función:

Function IsFormLoaded(FormToCheck As Form) As Integer
Dim Y As Integer

For Y = 0 To Forms.Count - 1
If Forms(Y) Is FormToCheck Then
    IsFormLoaded = True
    Exit Function
    End If
Next
IsFormLoaded = False
End Function