Why not use... shortcut key if you don't need date changed.
CTRL + ; (semi-colon).
EDIT:
Ah, guess I've misread the question. In that case, you will need circular reference to the cell containing formula. So if A1 is being edited by user and B1 contains formula...
=IF(A1<>"",IF(B1="",TODAY(),B1),"")