In my opinion, there are issues with the table designs and relationships. These should be fixed before doing anything else.
- There are field names with punctuation/special characters. Object names should be only letters/numbers (exception is the underscore). Do not begin object names with a number.
- There do not use look Up FIELDS in tables, instead use combo boxes on forms.
- "Type" is a reserved word in Access and shouldn't be used for an object name.
- Having "ID" as the name of every PK field is bad. Take the time to give (all) fields descriptive names.
- In EVERY module (form, report, standard), the top two lines should be
Code:
Option Compare Database
Option Explicit
If the PK field type is Autonumber, the Foreign key fields should (must) be Long Integer type. A FK field (long integer) should never have a default value set.
See Microsoft Access Tables: Primary Key Tips and Techniques
I like to use suffixes of "_PK" and "_FK" to be able to see relationships easier. (at least for me)
I also created a new form (no code), added the subforms and did not have any errors (except where the FK value was missing).