Another option, if this is going to be a regular report generated I've
used in the past is:
[1] Create a blank template XLS file with the formatting you require/
want.
TEMPLATE_some_report.xls
[2] In your code, make a copy of the file
templatedir/TEMPLATE_some_report.xls -> report/
some_report_file_yyyymmdd.xls
[3] Control the writing of your output to the appropriate cells in
"reportdir/some_report_yyyy_mm_dd.xls"
I find this has the advantage of not having to worry about picking up
VBA and the template can be altered fairly easily without messing with
the main code. However, this does become problematic if the report is
constantly changing and somewhat painful.
Sorry I couldn't help with the actual question, but hopefully it might
offer a quick workaround for you in the meantime.
Cheers,
t.