How can I read in rows from an Excel spreadsheet iteratively?
Mostrar comentarios más antiguos
I am working with a spreadsheet too large to import into Matlab. Is there a way I can read in one row at a time in a for loop? I'm unsure how to increment inside of a char. Currently, this is what I have:
filename = 'data.xlsx.';
xlRange = 'A1:A1888';
dataS = xlsread(filename,xlRange);
Respuestas (4)
sixwwwwww
el 16 de Oct. de 2013
Dear Jon, You can read excel file iteratively using for loop as follows:
count = 1;
n = 1888;
increment = 10;
for i = 1:increment:n
num{count} = xlsread('filename.xlsx', strcat('A',num2str(i),':A',num2str(i + increment - 1)));
count = count + 1;
end
I hope it helps. Good luck!
1 comentario
Image Analyst
el 16 de Oct. de 2013
Editada: Image Analyst
el 18 de Oct. de 2013
You've got to be kidding me. You suggest to call xlsread() 188 times? I hope he has all day to wait.
Jon
el 16 de Oct. de 2013
0 votos
1 comentario
Image Analyst
el 16 de Oct. de 2013
Editada: Image Analyst
el 16 de Oct. de 2013
No you don't. You can use R1C1 instead of A1 cell referencing. If you want to keep letters, then use Mike Sheppard's excelcol from the File Exchange. Don't miss my Answer elsewhere here.
Image Analyst
el 16 de Oct. de 2013
0 votos
Yes, you can use ActiveX like we so often recommend here. There are lots of examples. I've attached one below. You definitely DO NOT want to use xlsread - I can't stress that enough, unless you want to wait an eternity for your process to finish.
1 comentario
Image Analyst
el 18 de Oct. de 2013
Jon - were you able to accomplish your task? What's the status of this?
Categorías
Más información sobre Spreadsheets en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!