Prueba con esta idea:
Código:
procedure TForm1.Edit2Exit(Sender: TObject);
var
nValor,ErrCode:Integer;
begin
val(edit2.text,nValor,Errcode);
if errCode <> 0 then
MessageDlg('Error en la position: ' + IntToStr(ErrCode), mtWarning, [mbOk], 0)
else
if nValor > StrToInt(edit1.text) then
edit3.SetFocus
else
edit4.SetFocus;
end;
Un Saludo.