writing very large .xls file from a cell array

1 Ansicht (letzte 30 Tage)
YOGESH
YOGESH am 7 Nov. 2011
Bearbeitet: Walter Roberson am 28 Sep. 2015
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.

Akzeptierte Antwort

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

Weitere Antworten (2)

Becky
Becky am 17 Nov. 2011
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 am 17 Nov. 2011
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 Kommentare
Jan
Jan am 17 Nov. 2011
Did I mention already that "cellfun('length', C)" is faster than "cellfun(@length, C)"?
Fangjun Jiang
Fangjun Jiang am 17 Nov. 2011
Yah, Yah, Yah! Jan! That's why we need you!

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by