If you update via forms it should be easy. Form code for after update can email whatever you need. However, if I change a value, don't update, then put it back the emails still go out. You'd have to prevent that with the OldValue property for every bound control. If a control is unbound it has no OldValue property so you'd have to deal with that too. Or just don't bother and hope that doesn't happen - or allow user to kill the emails.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.