views:

658

answers:

1

How to identify where the Excel file use Excel 95 or Excel 97 specifications? i.e., which version of BIFF they uses.

+2  A: 

You can find the necessary information in the MICROSOFT OFFICE EXCEL 97-2007 BINARY FILE FORMAT SPECIFICATION available from Microsoft.

See page 11 for the following explanation:

BIFF       Microsoft Office Excel version
---------------------------------------------------
BIFF5      Microsoft Excel version 5.0 (XL5)
BIFF7      Microsoft Excel 95 (XL7) (also called Microsoft Excel version 7)
BIFF8      Microsoft Excel 97 (XL8), Microsoft Excel 2000 (XL9), 
           Microsoft Excel 2002 (XL10), Microsoft Office Excel 2003 (XL11), 
           Microsoft Office Excel 2007 (XL12)

You can identify the BIFF version used in an XLS file from the Beginning Of File (BOF) record present in all BIFF version 5, 7, and 8 files. In BIFF4 and earlier versions, various records (other than the BOF record) have version information specified in the high-order byte of their record numbers. This was a redundant methodology, so for versions of BIFF after BIFF4, Excel obtains the BIFF version by reading the BOF record.

The BOF record is described in detail on page 43 of the same document.

0xA3