Как-то так. Предполагается, что в Excel 2007+ мы сохраняем файл в формате Excel 2003. Открывать дальше Jet'ом 4 (не ACE).
X++:
{
COM xlApplication;
COM xlWorkbooks, xlWorkbook;
;
xlApplication = new COM('Excel.Application');
xlWorkbooks = xlApplication.Workbooks();
xlWorkbook = xlWorkbooks.Open(@'C:\reportSmall.xls');
xlWorkbook.SaveAs(@'C:\reportSmall_TEMP.xls', 56); // 56 = xlExcel8
xlWorkbook.Close(false);
}