matlab 矩阵加列名,MATLAB|Excel中的列名与数字的对应

最近处理数据将数据批量写入excel中,需要一个子函数,将excel中列名(字母)与数字对应,写了一个子函数,但是有点问题,找了网上的一些资料,发现这竟然曾经是一道程序员笔试题目。

网上的一些例子,链接如下:

因为我的数据最多也就是1000个,不超过excel的1000列,也就是最多用到三个字母。

别人写的都简短。我写的很拙略,看起来很笨,运行了一下有点问题,贴出来吧。

程序如下(注意,不太对,有问题):

function str_lie=Z1_col_alphabet_relate_num(datanum_col)

%% 找出excel列对应的字母

str_alphabet={'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O',...

'P','Q','R','S','T','U','V','W','X','Y','Z'};

if datanum_col<=26 %一个字母

str_lie=str_alphabet{1,datanum_col};

end

if datanum_col>26&&datanum_col<=26+26*26 % 2个字母

lie_1=fix(datanum_col/26); %整数

lie_2=mod(datanum_col,26); %余数

str_lie=strcat(str_alphabet{1,lie_1},str_alphabet{1,lie_2});

end

if datanum_col>26+26*26&&datanum_col<=26*26+26*26*26 % 3个字母

lie_1=fix(datanum_col/26/26); %整数

lie_2=fix((datanum_col-26*26)/26);

lie_3=mod(datanum_col,26); %余数

str_lie=strcat(str_alphabet{1,lie_1},str_alphabet{1,lie_2},str_alphabet{1,lie_3});

end

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值