... BTW, your comment about fixing (matching?) what you've done in table/query design is interesting. ...
Just to give you a taste, so to speak:
First, keep in mind our records in our main table have >50 fields per. They are legal records, so they must never be changed (except minor corrections like typos). There is recordkeeping of the edits/users.
I have a subform with 16 distinct visible fields that works kind of like an index/TOC. This subform has 14 sort buttons (7 fields) and 13 filter buttons (on 10 fields). All these buttons dynamically change color to indicate their state (active/inactive), including background, text, & hover(both). The sort order is changed on-the-fly by the order in which you press the buttons. These status are not saved in any table anywhere.
This subform calls up a form that displays the record. If you check a box on the subform, it saves your sort & filter status, even though it closes the form, when you go to the record form. Then, after returning (reopening) to the form with the subform, it automatically loads the sort & filter parameters, sets them, and sets the button colors using a private user-defined function, and you can then change the sort order as stated above, or disable/add filters, all using the buttons (filters sometimes require typing input). This is all done by building all the (active only) sort & filter status into a text string, and passing it to the next (sub)form in OpenArgs. The subform parses for each status from within the text sting passed to it. When a filter is active, the red "filtered" stamp shows in the middle of the header of the subform, among the buttons. It all works perfectly and beautifuly. It looks visually pleasing too.
Then there's the 'live search' forms. They take user input and dynamically change the results (drill-down) as the user types each character, reducing the number of results for the user to choose from. Without interrupting the user's input, without losing cursor position or selection. In it's current state, it usually takes only 1-4 keystrokes to see the target record on the screen without scrolling. It works instantly, no delay, if you are not working remotely.
A few of the fields (textboxes) in the aforementioned record forms brings up live search forms instead of letting you type into them. Automatically, instantly. And this is the only way allowed for these fields in this form (and another stripped-down version of the form). You might be surprised at how speedy of an entry method this is.
I hate ComboBoxes.
FYI.