MATLAB写入表格

按照官网教程来打,比如:

filename = 'testdata.xlsx';
A = {'Time','Temperature'; 12,98; 13,99; 14,97};
sheet = 2;
xlRange = 'E1';
xlswrite(filename,A,sheet,xlRange)

问题一:xlsx软件不兼容

建议卸载原来的wps软件比如wps,装office2010以上版本。

问题二:文件路径不对

另一个问题,装了office后还出错,这就考虑到语法参数等错误了,如:

Error using xlswrite (line 219)
Invoke Error, Dispatch Exception:
Source: Microsoft Excel
Description: Microsoft Excel ²»ÄÜ·ÃÎÊÎļþ¡°F:\work\results\22CC2000¡±¡£
¿ÉÄܵÄÔ­ÒòÓÐÒÔϼ¸¸ö:

? ÎļþÃû³Æ»ò·¾¶²»´æÔÚ¡£
? ÎļþÕý±»ÆäËû³ÌÐòʹÓá£
? ÄúÕýÒª±£´æµÄ¹¤×÷²¾Ó뵱ǰ´ò¿ªµÄ¹¤×÷²¾Í¬Ãû¡£
Help File: xlmain11.chm
Help Context ID: 0

Error in drawfield_single (line 79)
xlswrite([outputname,'.xlsx'],[11,x_draw;y_draw', sigma_11],1,'A1');

我没有在工作目录下创建results文件,有了上面的错误,一些参数的错误也可能导致,换句话说就是把文件路径打通,实际上,MATLAB可以自动生成一个.xlsx文件,所以文件可以不自己创建。但是路径中文件夹一定要存在(可以事先创建),我的代码:

x_draw=-(plot_w+plot_dis/2)/2:(1/k):(plot_w+plot_dis/2)/2;
y_draw=-plot_h:(1/k):0;
outputname=['results\x',num2str(x_offset2),'_ds',num2str(plot_dis),'_fa',num2str(plottype_1),'b',num2str(plottype_2)];
%-saving-result-to-xlsxfiles-----------------------------------------
xlswrite([outputname,'.xlsx'],[11,x_draw;y_draw', sigma_11],1,'A1');

问题三:文件名命名不符合规范

文件名命名必须是数字、字母或下划线,如:,:)&等都是不对的,然后.xlsx

posted @ 2019-10-24 17:45  狂小虎  阅读(129)  评论(0编辑  收藏  举报