找回密码
 注册
Simdroid-非首页
查看: 169|回复: 5

如何实现自动读取excel数据

[复制链接]
发表于 2011-1-15 10:01:14 | 显示全部楼层 |阅读模式 来自 山东青岛
用matlab读取excel,我想每次读取前三行

循环自动读取,

只会每次手动读取



a=xlsread('21.xls','sheet1','a34:a36')
b=xlsread('21.xls','sheet1','b34:d36')
c=xlsread('21.xls','sheet1','e34:g36')
d=c*inv(b)*a
xlswrite('21.xls',d,'sheet1','h34:h36')



怎么编程自动读取?
发表于 2011-1-15 10:09:13 | 显示全部楼层 来自 山东烟台
Simdroid开发平台
你的问题没有表达清楚
你是不是要每次读取不同文件?
如果是这样有很多的函数
首先使用cd   ls 等命令获取文件名
其次用strcat进行字符串连接
最后使用eval命令执行就行
回复 不支持

使用道具 举报

 楼主| 发表于 2011-1-15 10:39:40 | 显示全部楼层 来自 山东青岛
2# liuyalong008
呵呵,谢谢,每次读取同一个文件。
回复 不支持

使用道具 举报

发表于 2011-1-15 12:42:13 | 显示全部楼层 来自 山东烟台
2# liuyalong008  
呵呵,谢谢,每次读取同一个文件。
kthy2005 发表于 2011-1-15 10:39

我还是比较费解,姑且不论你问什么三次取同一位置的数据,而不把他们存放到一个固定的数组。
你直接可以写一个function实现,


  1. function f=user_fun
  2. f=xlsread('21.xls','sheet1','a34:a36')
  3. end
复制代码


每次直接运行 fuser_fun即可。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2011-1-16 00:48:54 | 显示全部楼层 来自 北京
  1. clear;clc;close all
  2. str=[97,97;98,100;101,103];
  3. vars={'a','b','c'};
  4. arrayfun(@(x)assignin('base',vars{x},xlsread(which('21.xlsx'),1,...
  5.     sprintf('%s34:%s36',str(x,1),str(x,2)))),1:size(str));
复制代码
不知道是不是要这种效果?

评分

1

查看全部评分

回复 不支持

使用道具 举报

 楼主| 发表于 2011-3-9 10:07:24 | 显示全部楼层 来自 山东青岛
5# qibbxxt
已经解决了,谢谢版主了
回复 不支持

使用道具 举报

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

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-5 01:18 , Processed in 0.043071 second(s), 18 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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