matlab将数据写入excel,创建table按照格式输出

上代码

clear all
clc
close all


XlsxPATH = 'D:\file\myexcel.xlsx';      % 输出的excel表格所在位置及名称
a=[68,15,66];						    % 随便设置点数据,我示例一维数组
x=[34,15,16];
b=[0];
y=[98,88,72];
c=[20,36];
z=[0];

% 如果文件不存在的话,就创建一个
if~exist(XlsxPATH,'file')
    for i=1:size(a,2);
    									% size内的3应是表格元素最长的长度
        if i>1
            b(end+1)=0;					% 因为b和z内我没有给有效数据,写入table的时候需要数据整齐、行数相同,以零占位
            z(end+1)=0;
        end
        
        if i>size(c)
            c(end+1)=0;  				% c内数据与最长的数据长度相比不够长,以零补位
        end
    end
    T = table(a‘,x’,b‘,y’,c‘,z’,'VariableNames',{'AA','XX','BB','YY','CC','ZZ'});
    									% 前面的axbycz由于是1*m的矩阵,我想纵向输出m*1的数据,就需要将矩阵转置如:a'
    									% 根据你的列表创建table ,每一列的名称可以自己设
    writetable(T,XlsxPATH,'WriteRowNames',true);   %把创建好的table写进表格
else
    [tmp1,tmp2,tmpRaw]=xlsread(XlsxPATH);

    if size(tmp1,1)==0&&size(tmp2,1)==0 % 是否是空文档
      mRowRange='1';
    else
      mRowRange=num2str(size(tmpRaw,1)+1); % 如果存在数据,保持原状不改动
    end
end

运行后结果

在这里插入图片描述

试试吧,代码我这调通无报错的

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值