Quite often we need to export to excel with different column names. I know that you can use the label field to change what gets displayed but you can't do that at runtime.
We need to do things like export list of the last 12 months, so for example if you run the report today if would show 12 columns starting from January and ending in December, however if you ran exactly the same report next month it would be February ending in January etc. To do this at the moment we would have to create 12 different structures to handle each combination and use a switch statement with 12 separate excel exports.
Having the ability to pass a list with the column names would make life far easier then if the list was blank it would fall back to the attribute name/label.
Or at the very least have an option to switch off the label names altogether then we could output the column headings as part of our record list.