作业帮 > 综合 > 作业

请问如何在excel中用公式自动算出条码的校验码

来源:学生作业帮 编辑:灵鹊做题网作业帮 分类:综合作业 时间:2024/04/29 20:00:04
请问如何在excel中用公式自动算出条码的校验码
比如条码在A1显示855103040002019 需要在B2自动计算校验码值为8

计算方法:奇数位相加*3再加上偶数位相加
((8+5+0+.+9)*3)+(5+1+3+...+1)=82
最后用大于82的整数10的整数倍减去82即 90-82=8
=ABS(MOD(SUMPRODUCT(MID(C2,{1,3,5,7,9,11,13,15},1)*3)+SUMPRODUCT(--MID(C2,{2,4,6,8,10,12,14},1)),-10))
研究了下这个公式可以达到想要的结果
请问如何在excel中用公式自动算出条码的校验码
你的条码都是15位数吧,如果是的话,就按这个公式:
=ROUNDUP(SUMPRODUCT(--MID(A2,ROW(A1:A8)*2-1,1))*3+SUMPRODUCT(--MID(A2,ROW(A1:A7)*2,1)),-1)-SUMPRODUCT(--MID(A2,ROW(A1:A8)*2-1,1))*3-SUMPRODUCT(--MID(A2,ROW(A1:A7)*2,1))
再问: 这个公式最后的值不对 条码是15位数
再答: 值是对的,我已经测试过了,不知道你的出了什么状况?
再问: 这个公式算出来最后的值是“5”,实际应该是“8”
再答: 仔细检查你输入的公式是否和我的公式一致
我试过很多次,答案就是8,
直接复制我的公式应该是可以的。
再问: 你帮我看看,这个答案是不对的

再答: 改成这样:
=ROUNDUP(SUMPRODUCT(--MID(A1,ROW($A$1:$A$8)*2-1,1))*3+SUMPRODUCT(--MID(A1,ROW($A$1:$A$7)*2,1)),-1)-SUMPRODUCT(--MID(A1,ROW($A$1:$A$8)*2-1,1))*3-SUMPRODUCT(--MID(A1,ROW($A$1:$A$7)*2,1))
你对错行了,现在你再试试
再问: O(∩_∩)O~ 这个现在对了 32个大赞!!!!!可惜我还没有财富值可以给!
不过这个有点深,脑子不够用有点看不懂
再答: =ABS(MOD(SUMPRODUCT(MID(C2,{1,3,5,7,9,11,13,15},1)*3)+SUMPRODUCT(--MID(C2,{2,4,6,8,10,12,14},1)),-10))
这个公式挺好的,把MOD的特性用了