最近一批文档归档,要求统计每个excel文件表的个数,当然,要排除空白表。
这个功能用matlab很好实现,但笔者在MATLAB File Exchange上面居然没有找到可以直接使用的函数。没办法,只好自己动手写一个了。
代码很简单
function sheetnum = getxlsheetnum(xlsfile)
% get sheet names
sheets = sheetnames(xlsfile);
if isempty(sheets)
warning('%s is a empty file.',xlsfile)
end
sheetnum = 0;
for i = 1:numel(sheets)
re = readcell(xlsfile,'sheet',sheets(i));
if ~isempty(re)
sheetnum = sheetnum+1;
end
end
需要注意的是,新版的MATLAB不推荐使用xlsfinfo和xlsread函数,推荐使用sheetnames,readcell,readmatrix,readtabel函数。