Once the record is currupt as you describe, the data is gone. Sometimes you can get lucky and salvage certain fields and only loose data in a few fields, and other times you can loose the whole record. There are some companies that say they can restore currupt data, but I am sure they are very expensive.
You should focus your efforts on why the records are being currupted. This could be a from a whole host of reasons. Data curruptions usually occur when someone is editing the record and something happens (like an abrupt network disconnect, ETC..).
I would check :
1. Network Integrity (i.e. wiring, NIC cards, and power). If you are having this problem on specific PC's it could be a wiring or NIC card issue. We have frequently had issues with specific DEll PC's with faulty integrated NIC cards, once we replaced the NIC card the users problems stopped.
2. We use small UPS units on all network PC's to protect against power dips and losses, which will reak havock on a access network setup and cause curruptions.
3. Access craves RAM, especialy in a large database. Be sure each workstation has plenty of RAM (min 256, optimally 512). Low ram can cause screen freezes and record curruption, if the user was editing when he has the loss of Ram. With access, the more RAM the better !
3. Make sure security (system.mdw file) has a unique user and password for each user, and that same system.mdw file is deplayed on the server and all workstations. Also check that your windows users & permissions are set up properly on the Back-End Server. You can get more locking conflicts if everyone signs in as Admin user.
4. Implement a good error handler that can record the errors, user, and form that an error occured on. This may give you a sense of where the trouble is starting.
5. Make sure the 'On Resume, Display Windows Screen" checkbox in the screen saver settings is unchecked. This will disconnect them from the network and kill their session with the backend database.
6. I am assuming you have split your database into a backend file and multiple front-end on each workstation, if you haven't you really should in a multi-user environment.
7. Sit with users having the problems, many times its a user issue in how they navigate your application which causes the problems.
8. It could be some event sequence in your programming that causes problems.
Anyway, tracking what causes curruptions is never easy, Starting with network integrity, RAM, and stable Power would be a good first check.
Good Luck
Jackson