reading multiple excel files

2 visualizzazioni (ultimi 30 giorni)
Matt
Matt il 11 Lug 2014
Risposto: Image Analyst il 11 Lug 2014
HI
I have multiple excel files at different folders. Lets say 5 excel files at 5 different folders. D:\1\1.xlsx.... to D:\10\10.xlsx!
I want to read the column of each excel sheet and store it to five variables in matlab. I am trying this, but i cant say like this..['dataname' num2str(k)] any help?
range='E1:E2500';
for k=1:5
fname=['d:\1' '\ALL000' num2str(k) '\F000' num2str(k) 'CH3.CSV'];
sheet=['F000' num2str(k) 'CH3'];
['dataname' num2str(k)]=xlsread(fname,sheet,range);
end
Thanks
Matt
  5 Commenti
Joseph Cheng
Joseph Cheng il 11 Lug 2014
so.... then just pull it out of the multi-column array after the for loop. or use eval() but that has its own issues of why you shouldn't do it. see dpb's FAQ about why this isn't doing anything for you.
dpb
dpb il 11 Lug 2014
Modificato: dpb il 11 Lug 2014
...I want to save ...like dataname1, dataname2,dataname3...
AGAIN, do NOT do this!!! (This way "there be dragons")
Use a name structure array or just ordinary arrays and reference the various data with the column number instead of "poofing" variables into the workplace.
While it is possible, it just leads to a nightmare later on to do so. There are languages (like REXX) that make such name creation a feature of the language, but Matlab is not one of those.

Accedi per commentare.

Risposte (2)

dpb
dpb il 11 Lug 2014
D:\1\1.xlsx.... to D:\10\10.xlsx
...I want to read the column of each excel sheet and store it to five variables
Do NOT do this. See the FAQ for why not and the alternatives.
  1 Commento
Joseph Cheng
Joseph Cheng il 11 Lug 2014
thanks dpb i keep losing this link for the questions that ask to create incremental named variables.

Accedi per commentare.


Image Analyst
Image Analyst il 11 Lug 2014
If you have more than one workbook, you should really use ActiveX programming rather than xlsread(). It will be a lot faster. See attached demo. Store each set of data you read in to a column of an array. Let me know if you can't figure out how to adapt the demo to do that.

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by