writing very large .xls file from a cell array
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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.
0 commentaires
Réponse acceptée
Jan
le 7 Nov 2011
I think it is this limitation of Excel:
Worksheet size: 65'536 rows by 256 columns
0 commentaires
Plus de réponses (2)
Becky
le 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?
1 commentaire
Walter Roberson
le 17 Nov 2011
Modifié(e) : Walter Roberson
le 28 Sep 2015
Fangjun Jiang
le 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 commentaires
Jan
le 17 Nov 2011
Did I mention already that "cellfun('length', C)" is faster than "cellfun(@length, C)"?
Voir également
Catégories
En savoir plus sur Spreadsheets dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!