using the paramater screen...
I would have 3 parameters, which would basically be just check boxes for last year, current year, next year.
The user selects the boxes that they want and then you can dynamically suppress the values on the report that you don't want to see.
If you want the report to always format the same...as opposed to empty columns, you could programmatically shift the location of the columns ( would start will all the columns in the 'first' column location, and then move them to the right however much is needed depending on how many checkboxes are selected).
HTH