There could be many reasons but any corruption observed should be dealt with as a priority as otherwise your database could become so badly corrupted that it is unusable.
First of all make a backup or two
As you are using Access 2013 so you should have updated to an ACCDB database many years ago.
This is a better file format in many different ways. Strongly recommend you convert after doing everything else I'm about to list
From your description, this is a multi-user database.
Is it a split database? If not then you need to make it so ASAP
If it is split, does each user have their own copy of the front end on their own computer (with a shared backend database on the server?)
If more than one user is SHARING the same copy of the database it WILL become badly corrupted.
However, if it is corrupted already, you need to fix that ... THEN split & distribute as described above.
Make a BACKUP - I know I've already said that ... do it AGAIN
Now work on one of the backup copies you've made
If it goes wrong at any stage, bin that & go to work on another copy - keep at least one copy spare just in case
Check that the project requires variable declaration in the VBE Options
If not, add that
Next check that EACH code module has these 2 lines in the Declarations section at the top of the module
Code:
Option Compare Database
Option Explicit
If either of those are missing, add them in each code module
Next see if the project COMPILES in the VBE
If not, work through and fix all compile errors until it does compile
Next DECOMPILE the database - see http://www.fmsinc.com/microsoftacces.../decompile.asp
This will remove any corrupt compile code that you may have.
Now RECOMPILE the database
Make ANOTHER backup
Now look at the suspect tables, note which are corrupt then delete all records with corrupt data.
If you have an old backup you can try to restore these records later if the old backup isn't corrupt
At this point, if you feel confident looking at the hidden system tables, you could attempt to repair the MSysObjects table
Follow the suggestions in this thread: https://www.access-programmers.co.uk...d.php?t=293579
Next run compact & repair (C&R)
If you have C&R set to run automatically when the database is closed, turn that off as it can also lead to corruption.
If ALL of that failed, you can try creating a new blank database & copying all database objects into that.
However, unless you have already done the earlier points, that will either fail for certain objects (LIKELY) or the corruption MAY be transferred (UNLIKELY)
After all of that, if you now have a working copy, setup a schedule for creating backups - at least once a day in most situations
Good luck