我有一个循环从一个文件夹中的几个excel文件中读取表。但是我收到以下错误:
Unable to open file 'C:\MATLAB\Data\fish\~$volume022017.xlsx' as a workbook. Check that the file exists, read access is available, and the file is a valid spreadsheet file.
我怀疑这是一个临时文件(我无法在资源管理器中看到)。文件列表使用'dir'创建:
filesData = [dir([folder,'\*.xlsx']);dir([folder,'\*.xls'])];
filenames = {filesData.name}';
'filenames'也没有列出这个文件。
然后我用
tmpTable=readtable( [folder, filenames{i}],'sheet',Tabs{term},'ReadRowNames',true);
给出错误。
答案 0 :(得分:0)
您可以将文件名过滤为不包含$:
的文件名 filesData = [dir([folder,'\*.xlsx']);dir([folder,'\*.xls'])];
filenames = {filesData.name}';
filenames2 = filenames(~contains(filenames,'$'))