Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4596|回复: 4

[已解决]计算条形码的校验码

[复制链接]
发表于 2014-7-15 16:29 | 显示全部楼层 |阅读模式
本帖最后由 429363226 于 2014-8-8 11:39 编辑

求条形码的相关计算
最佳答案
2014-7-17 12:03
给个烦琐的公式,不想去优化了。
E2数组公式下拉:
  1. =69559444&IFERROR(MID(VLOOKUP(IF(B2>"",A2,""),IF({1,0},IF(B$1:B1>"",A$1:A1,""),E$1:E1),2,),9,4),5000+SUM(N(MATCH(IF(B$2:B2="是",A$2:A2,""),IF(B$1:B2>"",A$1:A2,""),)=ROW($2:2))))&MOD(-90-SUM(MID(IFERROR(MID(VLOOKUP(IF(B2>"",A2,""),IF({1,0},IF(B$1:B1>"",A$1:A1,""),E$1:E1),2,),9,4),5000+SUM(N(MATCH(IF(B$2:B2="是",A$2:A2,""),IF(B$1:B2>"",A$1:A2,""),)=ROW($2:2)))),{1,2;3,4},1)*{1,3}),10)
复制代码

Book2.rar

223.11 KB, 下载次数: 37

发表于 2014-7-16 21:37 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2014-7-17 10:09 | 显示全部楼层
这儿有肥猫 发表于 2014-7-16 21:37
检验码是怎么算出来的?

计算公式我已经得出来了,我现在的主要问题是要通过两次的条件转换才能够得出结果,我现在是想能够一步到位不需要通过转换的。
附上条形码的计算规则:
步骤举例说明
1.自右向左编号某商品条形码为:690123456789X(X为校验码)
位置序号13121110987654321
代码690123456789X
2.从序号2开始,求出偶数位上的数字之和①9+7+5+3+1+9=34
3.①×3=②34×3=102
4.从序号3开始,求出奇数位上的数字之和③8+6+4+2+0+6=26
5.②+③=④102+26=128
6.用大于或等于结果④且为10的最小整数倍的数减去④,其差即为校验码值130-128=2
校验码X=2

回复

使用道具 举报

发表于 2014-7-17 12:03 | 显示全部楼层    本楼为最佳答案   
给个烦琐的公式,不想去优化了。
E2数组公式下拉:
  1. =69559444&IFERROR(MID(VLOOKUP(IF(B2>"",A2,""),IF({1,0},IF(B$1:B1>"",A$1:A1,""),E$1:E1),2,),9,4),5000+SUM(N(MATCH(IF(B$2:B2="是",A$2:A2,""),IF(B$1:B2>"",A$1:A2,""),)=ROW($2:2))))&MOD(-90-SUM(MID(IFERROR(MID(VLOOKUP(IF(B2>"",A2,""),IF({1,0},IF(B$1:B1>"",A$1:A1,""),E$1:E1),2,),9,4),5000+SUM(N(MATCH(IF(B$2:B2="是",A$2:A2,""),IF(B$1:B2>"",A$1:A2,""),)=ROW($2:2)))),{1,2;3,4},1)*{1,3}),10)
复制代码
回复

使用道具 举报

发表于 2014-7-17 22:30 | 显示全部楼层
delete_007 发表于 2014-7-17 12:03
给个烦琐的公式,不想去优化了。
E2数组公式下拉:

好长啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 11:19 , Processed in 0.179640 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表