Jeg forstår det som et spørgsmål til hvordan man bruger MDI-childs...
Du skal bare tilføje en MDI Form til projektet. Alle de vinduer du vil have til at åbne inden i dette vindue skal du indstille, så deres property 'MDIChild' bliver sat til True.
Du skal bare behandle vinduerne som man normalt gør, du behøver ikke at oprette en liste der holder styr på dem alle. Det virker mere som c++ programmering at man vil lave en liste med pointere til alle medlemmerne af MDI formen
Det er først når du skal lave flere kopier af samme form at du får brug for sådan noget. Se fx følgende kode hvor vi tager udgangspunkt i en form hvis property 'name' er lig med "frmMain":
Dim NewForm As Form
Set NewForm = New frmMain
Her opretter du en kopi af den form, som du kan se ved at skrive NewForm.Show. Dette kan være nyttigt hvis du vil lave en teksteditor og vil give brugeren mulighed for flere åbne dokumenter af gangen.
Når der er mange kopier af den samme form kan du ikke henvise til formen på samme måde som man ellers kan. Her skal du bruge en lykke der går alle formene igennem én for én. Så skal du bare sørge for at give din kopierede version af formen et kendetegn; fx et id i dens property 'tag'. Så kan du have et array der holder styr på id'erne hvis du vil. En sådan kode kunne se sådan her ud:
Dim MyForm As Form
For Each MyForm In Forms
If MyForm.Tag = "ID" Then
'Gør et eller andet
End If
Next MyForm
// Your brain is your weapon, do not waste it!!