Sadie -
Is this two separate reports on just one? It sounds like two. Anyway if you have an age field (which by the way is a bad idea because anytime anyone has a birthday you have to go in an change the data - if you store birthdate you can calculate age using a datediff function) back to the age field be it stored or calculated. On your report you can go to sorting and grouping and select to GroupBy a given field. On the bottom of the form you can choose to have a group header, footer, both or neither - in your case I would recommend a header so you can show which age the data relates to. Also on this form you can select an interval. This may work for you as long as you have people in all of the age groups (if your age group was 6-10 you would need to have at least one 6 year old, one 7 year old, one 8 year old, one nine year old, and one 10 year old) and the intervals need to be consistent (always 4 years or always 5 years). If that is not the case then you will need an expression in your query that will sort out the people for you. Something like the following should work:
AgeGroup: (IIf([age]<6,1,IIf([age]<11,2,IIf([age]<15,3,IIf([Age]<19,4,5)))))
That will return a 1, 2, 3, 4, or 5 depending on which age group they fall into. Once you have that you can group on the AgeGroup field.
Good Luck
GumbyD