查看: 2998|回复: 3|关注: 0

[已答复] 如何将多个excel中的几行取出放入一个表格中

[复制链接]

新手

5 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
发表于 2016-4-5 11:03:15 | 显示全部楼层 |阅读模式
如何将100多个excel表格中的第650行、2500行、4000行取出,并放入同一个表格中,新人求带,不胜感激!!
回复主题 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

入门

188 麦片

财富积分


50500


4

主题

294

帖子

40

最佳答案
  • 关注者: 3
发表于 2016-4-5 11:53:28 | 显示全部楼层
本帖最后由 liuyuting 于 2016-4-5 12:09 编辑

AllFile==dir('*.xls');
for i=1:length(AllFile)
content650(i,:)=xlsread(AllFile(i,1).name,'Sheet1','A650:AA650');
content2500(i,:)=xlsread(AllFile(i,1).name,'Sheet1','A2500:AA2500');
content4000(i,:)=xlsread(AllFile(i,1).name,'Sheet1','A4000:AA4000');
end
xlswrite('test.xls',content650,'Sheet1','A1');
xlswrite('test.xls',content2500,'Sheet2','A1');
xlswrite('test.xls',content4000,'Sheet3','A1');
回复此楼 已获打赏: 0 积分

举报

MATLAB 基础讨论
版块优秀回答者

入门

188 麦片

财富积分


50500


4

主题

294

帖子

40

最佳答案
  • 关注者: 3
发表于 2016-4-5 12:11:46 | 显示全部楼层
% 不过这样读取的较慢,每个excel文件都要打开关闭3次,如果要快一点话,

FileDir=uigetdir('','请选择文件存放的文件夹');
AllFile=dir([FileDir,'\*.xls']);
for i=1:length(AllFile)
    Excel = actxserver('Excel.Application');
    ExcelWorkbook = Excel.workbooks.Open([FileDir,'\',AllFile(i,1).name]);
    WorkSheets = ExcelWorkbook.sheets;
    content650(i,:)=WorkSheets.Item('Sheet1').Range('A650:AA650').value;
    content2500(i,:)=WorkSheets.Item('Sheet1').Range('A2500:AA2500').value;
    content4000(i,:)=WorkSheets.Item('Sheet1').Range('A4000:AA4000').value;
    ExcelWorkbook.Close(false);
    Excel.Quit;
end
xlswrite('test.xls',content650,'Sheet1','A1');
xlswrite('test.xls',content2500,'Sheet2','A1');
xlswrite('test.xls',content4000,'Sheet3','A1');
回复此楼 已获打赏: 0 积分

举报

新手

5 麦片

财富积分


050


1

主题

2

帖子

0

最佳答案
 楼主| 发表于 2016-4-5 15:53:43 | 显示全部楼层
liuyuting 发表于 2016-4-5 12:11
% 不过这样读取的较慢,每个excel文件都要打开关闭3次,如果要快一点话,

FileDir=uigetdir('','请选择文件 ...

谢谢回答,已经解决,多谢:handshake
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /5 下一条

快速回复 返回顶部 返回列表