Daniel,
Your replace command is leaving the table at EOF and that causes the controls to be disabled. Try something like this around the REPLACE line;
LOCAL lnRecNo
lnRecNo = RECNO()
REPLACE ALL ...
IF lnRecNo <= RECCOUNT()
GOTO lnRecNo
ENDIF
Thisform.Refresh()