matlab 求助大神啊,小白求过!

要实现读出DATA.xls的B1单元格内容,如果是a,则在DATA2.xls中的F1:F2:F3列写入 a=(n-1)*1000的数值分别是0,1000,2000.最终实现将DATA.XLS的C1:E1内容与DATA2.XLS的F1:F2:F3内容在TABLE2中对应的C1:E1与F1:F2:F3中显示出来。结果显示没有F1:F2:F3内容,如果只 set(handles.uitable2,‘data’,d);结果显示了0,1000,2000,但是是在A1:A2:A3显示的,而不是显示到对应的F1:F2:F3,

[numdata, textdata, alldata]=xlsread('data.xls','B1:B1');
c=xlsread('data.xls','C1:E1');

tf = strcmp(textdata,'a');
if tf==1
for n=1:3
a=(n-1)*1000;
xlswrite('data2.xls',a,1,['F' int2str(n)]);
end
d=xlsread('data2.xls',1,'F1:F2:F3');
set(handles.uitable2,‘data’,d);
set(handles.uitable2,‘data’,c);
end

没看太明白题主到底想要做什么。

在代码的最后有这样两句:

  set(handles.uitable2,‘data’,d);
  set(handles.uitable2,‘data’,c);

其效果是,前面一句不会起作用,因为uitable的data属性随后就被覆盖了。

如果希望同时显示d和c,应该把d和c拼接得到一个矩阵,然后再显示。

追问

恩,具体也就是说怎样把excel中某个特定单元格内容在table某个特定的单元格显示。

追答

uitable 好像不能单独改变某一个单元格的,要改就一起改。
如果只想改变某一个单元格,应该先获取uitable的data属性,修改相应的数据单元,再设置为新属性。

追问

能举个例子么,非常感谢,财富值一起送上

能举个例子么,非常感谢,财富值一起送上

追答

你把要求再明确一下,说清楚到底想要达到什么样的效果,我帮你做例子。

温馨提示:答案为网友推荐,仅供参考
相似回答