Assuming Q1 is your first query that returns (magically) records with the three fields (IngrDate IngrAmount IngrName), then here's what your second query Q2 looks like, approximately:
Code:
Q2:
SELECT IngrName, Sum(IngrAmount) AS SumOfAmount
FROM Q1
GROUP BY IngrName;
You just need:
Code:
Q2B:
SELECT IngrName, Sum(IngrAmount) AS SumOfAmount
FROM Q1
WHERE IngrDate BETWEEN (date1) AND (date2)
GROUP BY IngrName;
So the SQL change is trivial. The exact syntax will depend on what kind of box you put on your form to select the start and end dates, and whether you want to allow someone to have only a start date, or only an end date, or whatever. if you post the exact SQL you have, both Q1 and Q2, and the exact names of the text boxes or combo boxes that have the dates, we'll help you figure it out.
The other thing I want to verify: the word "subquery" has a specific meaning, and I think you may not mean it. A subquery is (loosely) a small section within a given query that queries a different table based on the current record of the main query.
If what you are calling your subquery is a saved query, with a name of its own, rather than a piece of a larger query, then that particular term might get you some confusing and unhelpful responses.