I have a very large structured multi-level questionnaire, not really suited to be filled as a single Access form.
Hence, I created forms for different questionnaire sections (they do contain VBA to perform some complicated validations and improve user experience, e.g, events Current, BeforeUpdate, BeforeInsert). This helped to keep the forms controls and code at a manageable size.
I now wanted to use Navigation Form with tabs on left and top, to make editing the record user friendly and logically split into structured sections matching the original questionnaire.
However, I could not figure out how to make the Navigation Form keep the individual forms in sync for the record, when switching between the forms or moving between the records. I turned off the navigation buttons and record selector in the individual forms and turned them on in the Navigation Form. I do understand that only one individual form is loaded at a time in a Navigation Form but I am still stuck after trying and failing for almost a whole day.
My naive solution would be to store a record ID in a bound control in the Navigation Form and use it when loading the "child" individual forms, but I am not sure if this is the way. Nor do I know how to best implement this, i.e., create/load/store a record with a given ID in a form and not risking something goes wrong and the data go out of sync.
I am on Office 365 and Windows 10.
While I have decent programming experience and some database knowledge, I am not really familiar with VBA or Access, so I may have missed something fundamental. Out of desperation, I briefly tried adding the individual forms as subforms on pages of a tab control (that would be considered largely inferior to using navigation form with two-level structure), did not seem simple there either.
Thanks