ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > 函数与公式 > 如何对比两表根据多字段值变化标注终表版本号?

如何对比两表根据多字段值变化标注终表版本号?

作者:绿色风 分类: 时间:2022-08-17 浏览:131
楼主
rabbitllu
Q:如何对比两表根据多字段值变化标注终表版本号?

A:“表一”和“表二”报表结构完全相同,数据明细有变动,要求根据相同的“产品号”比较两表间“数量”、“工艺流程”、“起始段终止段”来自动更新版本号。

表一:

 

表二:

 

效果图:

 

解决方案:
在“终表”中,A3单元格录入如下公式:
  1. =IF(COUNT(1/AND(VLOOKUP(B3,表一!B:M,5,)=F3,VLOOKUP(B3,表一!B:M,10,)=K3,VLOOKUP(B3,表一!B:M,11,)=L3,VLOOKUP(B3,表一!B:M,12,)=M3)),INDEX(表一!A:A,MATCH(B3,表一!B:B,)),"C")
思路解析:
1、VLOOKUP(B3,表一!B:M,5,)=F3 比较两表数量是否相同;
2、VLOOKUP(B3,表一!B:M,10,)=K3 比较两表工艺流程是否相同;
3、VLOOKUP(B3,表一!B:M,11,)=L3 比较两表中起始段是否相同;
4、VLOOKUP(B3,表一!B:M,12,)=M3 比较两表中终止段是否相同;
使用AND函数,若以上四个条件同时满足则返回1,否则返回0
使用COUNT取值1或0
再用IF函数,如果条件值返回1,则返回“表一”中的版本号,否则返回新版本号“C”


自动标注版本.rar
2楼
后知
学习下  很感谢无私的分享         
3楼
wjc2090742
至少可以改成数组公式
  1. =IF(COUNT(1/(VLOOKUP(B3,表一!B:M,{5,10,11,12},)=CHOOSE({1,2,3,4},F3,K3,L3,M3)))=4,INDEX(表一!A:A,MATCH(B3,表一!B:B,)),"C")
4楼
rabbitllu
跟着翁版学数组,谢谢
5楼
xiaoliliu
您好,我在使用的过程中发现了个小问题。附件中表一的第三行和表二的第四行完全一样,表一的第四行与表二的第三行完全一样,但是用此函数第三行版本号却修改了。


这个问题可以帮忙解决一下吗?


自动标注版本1.zip

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap