maybe I am not understanding, but can't you just ORDER BY DATE in the query?
If you get a field back with the date, you can access the text versions from it.
:)
If rs("TheDate").Value = #6/5/2004"
If you do
Variable = Month(rs("TheDate").Value)
then Variable then = 6
If you do
Variable = MonthName(Month(rs("TheDate").Value))
then Variable = "June"
If you do
Variable = Day(rs("TheDate").Value)
then Variable = 5
If you do
Variable = Year(rs("TheDate").Value)
then Variable = 2004
If you do
Variable = WeekDay(rs("TheDate").Value)
then Variable = 6
If you do
Variable = WeekDayName(rs("TheDate").Value)
then Variable = "Friday"
You can run through the loop ordered by the date and have variables that you load the month name into. When you look at a new record, compare it to the previous month name. If different, you can print a heading using the above samples to get the month and years from the new date.
Chris