Como saber se um form está aberto ou não

Quando um form ou outro objeto não existe, a variável deve estar “nil”, então veja o que fazer para saber:

Exemplo:                    

form1 := Tform1.create();

a variável form1 passa a ter um valor diferente de nil. Logo, faça o teste: 

If form1 = nil then       {form não criado ainda ou já foi fechado}

Lembre-se de fazer o form1, no seu evento close, receber nil.                                    

form1 := nil;
Assim ele estará fechado e não existirá mais.