Since you are directly referencing the Combo Box control values as criteria in the SQL you don't have to write differently for Text data.
Code:
SELECT field1,field2,field3 FROM [my table] WHERE ([field1]=forms!mainForm!combo1.value AND [field2]=forms!mainForm!combo2.value AND [field3]=forms!mainForm!combo3.value);
The above SQL can be set as Record Source for the sub-form but both Forms must be refreshed every time you change the value in those comboboxes to reflect the change in the sub-form.
Write Click Event Procedures with the statement Me.Refresh for all the three comboboxes to run the refresh action whenever you make the Combobox selections.
A far better and simple method is to use the Link Master Field, Link Child Field property settings on the Sub-Form. You can use the Combobox Control names in the Link Master Field property: Combo1;Combo2;Combo3 and in the Link Child Field Property their corresponding Field Names from the Sub-Form in the correct order. This will automatically refresh records on the Sub-Form based on changes you make on the Comboboxes. No need of any Click Event Procedures to refresh the change.