If i could do this i could reduce the report from outputing say ~ 3300 (all locations for each year shown) pages to `330 pages hanged).
Given the size of this report there's something you should be aware of that I forgot to mention. The code I provided creates a table each time the report is run. I couldn't find anyway around this. This means the size of your database will increase by the size of that table each time the report is run. To recoup that space you will need to run compact and repair. There's an option in the Current Database section of options to "Compact of Close". You might want to consider that option. Alternatively you could put this table in a separate linked database and have that database compacted as part of the code that runs the report. If you want to do this and need help setting it up, let me know.