Gives this error when creating new HSSFWorkbook. The excel file was made with OpenOffice 3.0, and converted to Microsoft Excel 97/... format. This error occurs ONLY WHEN THERE ARE BOOLEAN VALUES in the spreadsheet!
I think the mistake is in OOO Calc - line 651 of xetable.cxx: (http://svn.services.openoffice.org/ooo/trunk/sc/source/filter/excel/xetable.cxx) This is inconsistent with the documentation. I would propose this fix: Index: xetable.cxx =================================================================== --- xetable.cxx (revision 268869) +++ xetable.cxx (working copy) @@ -648,7 +648,7 @@ void XclExpBooleanCell::WriteContents( XclExpStream& rStrm ) { - rStrm << sal_uInt16( mbValue ? 1 : 0 ) << EXC_BOOLERR_BOOL; + rStrm << sal_uInt8( mbValue ? 1 : 0 ) << EXC_BOOLERR_BOOL; } // ---------------------------------------------------------------------------- I guess Excel is able to read the file because the desired value of 0 (==EXC_BOOLERR_BOOL) still gets written to the second data byte. Fixed in svn r791595 I wrote a unit test to reproduce the problem and also modified POI to tolerate the OOO Calc bug.