in the case lookup recordset, which is working, you have this as the first part of the where clause:
WHERE optiongroups.OptionGroupName = 'Case'
in the cpu lookup recordset which is not working, the first part of the recordset is:
WHERE optiongroups.OptionGroupID = '2'
Are you sure OptionGroupID 2 is correct for the CPU option group?
maybe try changing that to:
WHERE optiongroups.OptionGroupName = 'CPU'
be careful of case senstivity, use the same case for CPU as you entered in the optiongroups.OptionGroupName