Creo que antes de que salte la excepcion porq no pruebas con la funcion StrtoFloatDef es mucho mas facil de utilizar, seria algo asi
Código Delphi
[-]
Costo_Unit_Trans := StrtoFloatDef(EdtCostoUn.Text, -1);
if Costo_Unit_Trans = -1 then
begin
ShowMessage(EdtCostoUn.Text + ' No es un valor numerico. Favor de corregir');
EdtCostoUn.SetFocus;
end;