Just an FYI: Was looking into that for a different flavor of the an issue.
These two links include code examples and offer the different numbers uses. There is also a statement about using the numbers rather than the defined constants for compatibility reasons.
These two links are very close to the same one written in Excel 2007 and one for Excel 2010:
http://www.rondebruin.nl/saveas.htm
http://blogs.office.com/b/microsoft.../use-the-vba-saveas-method-in-excel-2007.aspx
What was of interest is code to open Workbook
with Macro Enabled:
These are the main file formats in Excel 2007:
51 = xlOpenXMLWorkbook (without macro's in 2007, .xlsx)
52 = xlOpenXMLWorkbookMacroEnabled (with or without macro's in 2007, .xlsm)
50 = xlExcel12 (Excel Binary Workbook in 2007 with or without macro's, .xlsb)
56 = xlExcel8 (97-2003 format in Excel 2007, .xls)
AND
These are the main file formats in Excel 2007-
2010:
51 = xlOpenXMLWorkbook (without macro's in 2007-
2010, xlsx)
52 = xlOpenXMLWorkbookMacroEnabled (with or without macro's in 2007-2010, xlsm)
50 = xlExcel12 (Excel Binary Workbook in 2007-
2010 with or without macro's, xlsb)
56 = xlExcel8 (97-2003 format in Excel 2007-2010, xls)
Note: I always use the FileFormat numbers instead of the defined constants
in my code so that it will compile OK when I copy the code into an Excel
97-2003 workbook. (For example, Excel 97-2003 won't know what the
xlOpenXMLWorkbookMacroEnabled constant is.)