Colega, en el hilo anterior te di la solucion para que no uses variables:
Código Delphi
[-]
procedure Tform1.Button1Click(Sender: TObject);
var
I:integer;
begin
for I:= 0 to MDIChildCount-1 do
if MDIChildren[i] is Tform2childthen begin
MDIChildren[i].Show;
Exit;
end;
form2child:=Tform2child.Create(Application);
end;
Siendo form1=MDIFORM con un boton el cual llamara Form2child=MDICHILD
Con respector a tener 15 formularios abiertos es una masacre para ese equipo tener cargado todo eso, te recomiendo que no la tengas todas abiertas.