Meredith: is it that you have 3 groups and want to have the report look at the data several different ways?
if that is the case....and I am not sure it is

... then you could create a parameter to control the grouping
eg.
{?ReportGroup}
parameter type: string
description: Type "1" for Pens/Glue/Paper
"2" for Glue/Pens/Paper
"3" for Paper/Pens/Glue
"4" for Pens/Paper/Glue
"5" for Glue/Paper/Pens
"6" for Paper/Glue/Pens
default: 1
then create a grouping formula for each group
@grouping1
if {?ReportGroup} = "1" or {?ReportGroup} = "4" then
{Table.Pens}
else if {?ReportGroup} = "2" or {?ReportGroup} = "5" then
{Table.Glue}
else if {?ReportGroup} = "3" or {?ReportGroup} = "6" then
{Table.Paper}
else
{Table.Pens} ;// a default in case of a bad entry
A similar formula would be made for Groups 2 and 3
Not sure if this is what you want...but sorta sounds like it. Jim Broadbent