writing very large .xls file from a cell array

1 次查看(过去 30 天)
Hello, I have a cell array named toatlData of size (367798 21). The array contains text (first column) and numerics (sometimes NaN). Is there a way to write such file? I tries, but I get some internal error as
xlswrite('dataRn.xls',totalData(1:end,1:end), 'Sheet1','A1');
Excel returned: Error: Object returned error code: 0x800A03EC.

采纳的回答

Jan
Jan 2011-11-7
This problem is explained in: Solution 1-3QJ5I3
I think it is this limitation of Excel:
Worksheet size: 65'536 rows by 256 columns

更多回答(2 个)

Becky
Becky 2011-11-17
MS Excel 2007 and 2010 do not have the 256 column limit anymore. Does anyone know if Matlab plans to upgrade xlswrite to xlsxwrite to support writing the newer *.xlsx files?

Fangjun Jiang
Fangjun Jiang 2011-11-17
There is a bizarre bug in MS Office that if any of the cell contains more than 911 characters, you'll have that error. I've had this problem many times and I have to develop an alternative writing the data one cell at a time using COM server.
I've verified this bug in Visual Basic, Visual C and reported this bug to MicroSoft long time ago but didn't really received follow up. You can find many others on the web too.
To find out if this is really the cause, you can run
any(any(cellfun(@length, YourCellArray)>911))
  2 个评论
Jan
Jan 2011-11-17
Did I mention already that "cellfun('length', C)" is faster than "cellfun(@length, C)"?

请先登录,再进行评论。

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by