matlab实现跨表自动对应标题填写数据
Posted py佐料
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab实现跨表自动对应标题填写数据相关的知识,希望对你有一定的参考价值。
1. 在这次国赛建模中发现最后的结果填表是一件很繁琐的事情,于是手写了这份代码和大家分享。
下面对代码的功能作出说明:
当要实现:将2表中的数据搬到1表中对应标题的行中时,可以利用此代码块实现。
要被搬运的数据:
实现效果如图:
搬运完对应数据后的效果:(黄色为后期填充,与代码无关)
下面给出此实例的.m代码和数据表,需要的自行修改参数即可完成不同任务的需求
补充:下面的lettertoxls函数需要自己copy一份,放在对应路径下,成.m文件。这个函数文件在我的文章:> https://www.cnblogs.com/Hello-world-hello-lazy/p/15228690.html 《用matlab对excel中数据选择性染色》中可以find到
clc,clear;
% 2表的数据往1表有位置的地方填
[a,b,c]=xlsread("C:\\Users\\HUAWEI\\Desktop\\2.xlsx","sheet1");
[d,e,f]=xlsread("C:\\Users\\HUAWEI\\Desktop\\1.xlsx","sheet1");
for i=1:8
for j=1:7%两个循环扫描待被填的数据(最大是7,不是8,为了防止越界,因为lettertoxls(j+1)这里是j+1
for k=1:17%扫描待填表待填的位置(首列即为标题)
if(strcmp(c(i,1),f(k,1))==1)%若标题号对应上了
str2=int2str(k);
lie=lettertoxls(j+1);%+1是因为a,c的矩阵大小和分布不同,之间差了一列,jmax=7,因为不能超界
poistion=strcat(lie,str2);
writematrix(a(i,j),"C:\\Users\\HUAWEI\\Desktop\\1.xlsx","Sheet",1,\'Range\',poistion);
end
end
end
end
最后是实例对应的数据表:
表2
链接:https://pan.baidu.com/s/1ZR1Uxy4J2-ZCgmhAihxTFA
提取码:s29x
表1
链接:https://pan.baidu.com/s/13-Cs-xzavPR1mzY9-bO0Pw
提取码:imy3
这篇文章,是又一个故事的结束...
lazy\'s story is continuing.
以上是关于matlab实现跨表自动对应标题填写数据的主要内容,如果未能解决你的问题,请参考以下文章
如何在某个网页上自动填写表单并上传附件,并提交。页面上用的是type = file这个东西