使用matlab将数据输入excel表

时间:2017-12-08 11:38:25

标签: matlab matlab-figure

我正在从文本框输入excel表格中的动态数据。问题是它在每个单元格中逐字逐句输入。

这是我尝试过的代码:

 >>function bntEnterData_callback(hObject,eventdata,handles)
 >>val1 = get(handles.txt1,'string'));
 >>val2 = get(handles.txt2,'string'));
 >>val3 = get(handles.txt3,'string'));
 >>values = [ val1 val2 val3]
 >>filename= 'try.xls';
 >>sheet= 1;
 >>xkRange= 'A2';
 >>xlswrite(filename,values,sheet,xlRange);

1 个答案:

答案 0 :(得分:1)

假设您的handles.txt*是编辑uicontrols'String'属性将成为字符向量。连接多个字符向量只会创建一个更长的向量:

a = 'foo';
b = 'bar';
values = [a b]

创造了:

values =

    'foobar'

如果未明确提供要写入的单元格范围,xlswrite将解释输入单个单元格(或默认A1)作为起点,并使用输入数组的所有元素进行编写单细胞作为起源。因为'foobar'是一个字符数组,所以它给出了预期的行为:

no

要解决此问题,请将其连接到单元格数组中:

a = 'foo';
b = 'bar';
values = {a b};

filename= 'try.xls';
sheet= 1;
xlRange= 'A2';
xlswrite(filename,values,sheet,xlRange);

yay