xlswrite too large imput
24 views (last 30 days)
Show older comments
Hi everybody.
I' trying to save a very large cell matrix (1 393 120 x 15) to a xlsx, but xlswrite returns: 'The specified data range is invalid or too large to write to the specified file format. Try writing to an XLSX file and use Excel A1 notation for the range argument, for example, ‘A1:D4’.' Does anybody knows how could I do this?
Thank you!
PS: my code is xlswrite('C:\Users\***\CompresorCompleto.xlsx',DatosTot.raw); where * are the full path (and it's ok, I check it) and DatosTot.raw is the matrix I want to write
3 Comments
Gaurav Kumar
on 20 Apr 2019
Dont forget to put extenstion after name of file
eg if file is xyx then write command as 'xlswrite("xyz.xlsx", data);
Hope it works for you. It worked for me. All the best
Accepted Answer
Eric
on 20 Jun 2017
The maximum number of rows in a single worksheet for newer versions of Excel is 1,048,576 according to https://support.office.com/en-us/article/excel-specifications-and-limits-1672b34d-7043-467e-8e27-269d656771c3. You're trying to create a worksheet with too many rows.
3 Comments
pavan balla
on 9 Oct 2021
The reason for this error is when you try to save values other than 1x1 dimensions, you will face this error. Try using another method to save your values.
Walter Roberson
on 10 Oct 2021
The user specifically said they are trying to save a very large cell matrix (1 393 120 x 15) which is over 1 million rows. And since the user specifically named a number over 1 million, then it is highly likely that they were indeed wanting to write over 1 million rows, as opposed to being mistaken about whether that was what they wanted to do.
More Answers (2)
Jan
on 20 Jun 2017
The documentation explains:
Input matrix, specified as a two-dimensional numeric or character array, or, if each cell
contains a single element, a cell array.
Does this match your DatosTot.raw? If so, there must be another problem. Let's ask an internet search engine for the maximum number of cells in an Exel column:
Excel 2007, 2010 and 2013 support 1'048'576 rows (2^20)
This means, that an XLSX file cannot carry 1'393'120 rows.
0 Comments
Seyedali Mirjalili
on 28 Jan 2018
I had the same issue and managed to fix it. I was trying to create a file that did not exist in the path. So, I created the file manually and surprisingly the error disappeared. Sounds like magic, but it worked for me every single time.
See Also
Categories
Find more on Spreadsheets in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!