Ahora tengo otro problema.
He solucionado el anterior destruyendo el form cuando le pregunto si existe:
If form1=nil Then
begin
Application.CreateForm(TForm, form1);
end
else
begin
form1.Destroy;
Application.CreateForm(Tform1, form1);
end;
form1.show;
Pero la 2ª vez que creo el formulario no me crea los componentes Data source y query que tenia en el formulario