"Ryan " <firstname.lastname@example.org> wrote in message news:email@example.com... > So, I run this code: > d = dir('C:\Users\Excel\Desktop\Excel_Files\*.xls*'); nfiles = length(d); > for k = 1:nfiles > n=int2str(k); > eval(['[num' n ', txt' n ', raw' n '] = xlsread(d(k).name,1);']);
Don't do this! See question 6 in the Programming section of the newsgroup FAQ instead!
> end > > Everything imports fine. However, if I change some data, and re-run the > code, I get what I had initially, NOT the changed data. So, I run > ?clearvars?, and try again; I get the initial data. Then, I deleted ALL > Excel files in the folder and run the code. I get 0; this is what I?d > expect. However, if I create a new Excel file, and name it Book1, and put > it in that same folder as before, I get what was in the FIRST Book1, not > the ACTUAL/NEW Book1. This makes no sense whatsoever. It's like Matlab > preserves things in it's memory, even after I run 'clearvars'. It can't > be like that. There?s no practical application for that kind of thing.
MATLAB should not be doing what you describe, so there's some information about what you're doing that you haven't stated. Tell the group the EXACT procedure you follow to reproduce this problem or send that exact procedure to Technical Support. Readers or support staff that don't have your data files should be able to use this procedure to try to reproduce the problem themselves.
Some suggestions for information to include in your procedure:
1) State the exact contents of the Excel file. When you make a change, describe exactly the change you make. 2) Following any modification to the Excel file, make sure you SAVE to ensure the changes you're trying to read have been committed to disk. 3) Try using a different location on disk. In particular, I'm not sure if Windows handles the Desktop directory specially; try using the temp directory and see if you can still reproduce the behavior.