hola. Si te esta dando ese error es porque ValorX tiene que ser diferente de 'CheckBox1'...me parece que valorx lo vas cambiando. Entonces lo que deberias hacer es, simplemente, obviar la excepcion, por ejemplo
Código Delphi
[-]
var
checkbox : TCheckBox;
spinedit : TSpinEdit;
editbox : TEdit;
...
begin
checkbox := nil;
spinedit := nil;
editbox := nil;
...
for i := 0 to numero_componentes_cargados do
begin
valorx := Nombres_componentes[i];
if checkbox := nil then
try
checkbox := (FindComponent(Valorx) as TCheckBox);
except
end;
if spinedit = nil then
try
spinedit := (FindComponent(Valorx) as TSpinEdit);
except
end;
if edit = nil then
...
end;
...
if edit = nil then ShowMessage('No se encontro el componente edit');
if checkbox = nil then ShowMessage('No se encontro el checkbox');
if spinedit = nil then ShowMessag('No se encontro el spinedit');
....
end;
son importantes los = nil ya que sino es posible que se perdieran si anteriormente se hubiesen cargado. Saludos.