matlab几个excel文件

我有4个文件夹,每个包含几个(> 10)Excel电子表格。 如何将每个电子表格的最后一个工作表提取到matlab中? 所以在matlab中,数据是这样的,一个单元格将代表一个文件夹,并在该单元格中,你将有每个文件夹的内容,即每个电子表格的最后一个工作表的数据?

干杯

使用XLSFINFO函数。 它确定该文件是Excel电子表格,会给你所有工作表的列表,并且还可以检测到excel文件格式。

[status,sheets,format] = xlsfinfo(filename); if ~isempty(status) lastsheet = sheets{end}; end 

一旦你知道了最后一张表名,你可以使用XLSREAD从它获取数据。

 [num,txt,raw] = xlsread(filename,lastsheet); 

使用DIR来收集文件夹中的文件名。


UPDATE

检查这个脚本:

 folders = {'test1','test2'}; DATA = cell(numel(folders),1); for fo = 1:numel(folders) files = dir(folders{fo}); %# get array fo all files in a folder files([files(:).isdir]) = []; %# remove directories from the structure array DATA{fo} = cell(numel(files),1); for fi = 1:numel(files) filename = fullfile(folders{fo},files(fi).name); disp(filename) [status,sheets] = xlsfinfo(filename); if ~isempty(status) lastsheet = sheets{end}; [num,txt,raw] = xlsread(filename,lastsheet); DATA{fo}{fi} = num; %# or txt, or raw end end end