CyRhmU.jpeg
查看: 5170  |  回复: 3

blesswj

金虫 (小有名气)

[求助] 关于matlab中循环读取多个excel文件的问题?

现有文件夹D:\abc中有500个excel文件,名字分别为1.xls、2.xls、3.xls、、、、500.xls,其中每个excel文件均有一个Sheet1,其中Sheet1中的A1:D50中有所需要的数据,现在的目的是想使用matlab编程,使用循环读取其中的数据存放到500个50×4的二维数组中,matlab读取excel文件我倒是很清楚,但是如何使用循环读取excel的名字然后读取excel中特定单元格的内容,请高人指点?谢谢
回复此楼

» 收录本帖的淘帖专辑推荐

matlab matlab

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

多累的时间,想想未来,忍一忍,走下去......
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nefu_qu

木虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
blesswj: 金币+20, ★★★很有帮助, 非常感谢 2012-05-01 14:46:28
xiegangmai: 金币+2, 谢谢应助! 2012-05-01 22:45:07
这个可以实现。注意excel中好像只能sheet1有内容。假定程序与excel在同一目录。
data=zeros(50,4,500);
for fn=1:500
    data(:,:,fn)=xlsread([num2str(fn),'.xls' ]);
end
如果excel不只是50行4列的数据,则可
for fn=1:500
    datatem=xlsread([num2str(fn),'.xls' ]);
    data(:,:,fn)=datatem(1:50,1:4);
end
不会的太多啦
2楼2012-05-01 11:45:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

blesswj

金虫 (小有名气)

引用回帖:
2楼: Originally posted by nefu_qu at 2012-05-01 11:45:18:
这个可以实现。注意excel中好像只能sheet1有内容。假定程序与excel在同一目录。
data=zeros(50,4,500);
for fn=1:500
    data(:,:,fn)=xlsread();
end
如果excel不只是50行4列的数据,则可
for fn=1:500
...

如果excel文件中还有sheet2,而我们只需要读sheet1中的数据,这句应该如何修改?data(:,:,fn)=xlsread([num2str(fn),'.xls' ])
多累的时间,想想未来,忍一忍,走下去......
3楼2012-05-01 14:47:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

nefu_qu

木虫 (正式写手)


xiegangmai: 金币+1, 谢谢参与! 2012-05-01 22:45:18
引用回帖:
3楼: Originally posted by blesswj at 2012-05-01 14:47:35:
如果excel文件中还有sheet2,而我们只需要读sheet1中的数据,这句应该如何修改?data(:,:,fn)=xlsread()

只用sheet1的话不用更改。
其实可以看一下函数帮助。2010a中默认是第一个工作表。我隐约记得6.5中如果有多个工作表,程序会报错的。
不会的太多啦
4楼2012-05-01 15:13:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 blesswj 的主题更新
信息提示
请填处理意见