What you're talking about is called 'cascading combo boxes'
To handle it you will have to have two tables
tblSubjects
tblSubjectGroups
(or something similar)
tblSubjects should have a primary key (autonumber) and, at the very least, a description of your main subjects (non-fiction, etc)
your tblSubjectGroups should have it's own PK (autonumber again will work fine) a foreign key to your subjects table and, at the very least, a description of that sub category (self-help, do it yourself, history, etc)
Then when you catalog your books each book would have a foreign key to your tblsubjects and your tblsubjectgroups
For your data entry you would have two combo boxes, one based on tblsubjects, one based on tblSubjectGroups, in one of the events of tblsubjects (I prefer the ON EXIT property myself) of the combo box relating to tblsubjects you want to have code like
Code:
[subjectgroups_Field_Name].requery
The most important part to get this to work is that your data source for the combo box holding tblsubjectgroup must have a criteria in the field holding the tblSubjects FK (foreign key) of
[forms]![formname]![subjects_combo_box_name]
Where formname is the name of your form
subjects_combo_box_name is the name of your 'first' combo box