ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > 函数与公式 > 如何计算10位和13位ISBN号校验码?

如何计算10位和13位ISBN号校验码?

作者:绿色风 分类: 时间:2022-08-17 浏览:257
楼主
gouweicao78
Q:如何计算10位和13位ISBN号校验码?
A:根据两者不同的校验码规则,可以使用不同公式计算及转换:


 

【小知识】

校验码通常是一组数字的最后一位,由前面的数字通过某种运算得出,用以检验该组数字的正确性。常见的校验码有中华人民共和国居民身份证的最后一位、ISBN号码的最后一位、组织结构代码的最后一位等。

国际标准书号(International Standard Book Number)简称ISBN,是国际通用的图书或独立的出版物(除定期出版的期刊)代码。出版社可以通过国际标准书号清晰地辨认所有非期刊书籍。

1976年,中国香港引入国际标准书号系统。至1986年,中国**引入国际标准书号系统。其后的1989年,中国台湾引入国际标准书号系统。2000年因澳门政权移交,澳门由原来的国家、语言或区位代码"957"改为"99937"。

2007年1月1日- 国际标准书号的格式由10位修订为13位

国际标准书号号码由13位数字组成,并以四个连接号或四个空格加以分割,每组数字都有固定的含义。第一组:978或979;第二组:国家、语言或区位代码;第三组:出版社代码;由各国家或地区的国际标准书号分配中心,分给各个出版社。第四组:书序码;该出版物代码,由出版社具体给出。第五组:校验码,只有一位,从0到9。


以疑难千寻千解丛书之《Excel 2010 函数与公式》为例,其ISBN号码为:9787121120428,最后一位数字8为校验码,用下面方法推算:
①前12位的奇数位*1,即:9、8、1、1、2、4分别*1
②前12位的偶数位*3,即:7、7、2、1、9、2分别*3
③把①和②乘积相加,得到82
④82对10求余得2,再用10-2得到校验码8。

例如ISBN号在B3单元格,公式如下:
  1. =10-MOD(SUM(MID(B3,{1,2;3,4;5,6;7,8;9,10;11,12},1)*{1,3}),10)




例如ISBN号在A2单元格,公式如下:
  1. =MID("123456789X0",11-MOD(SUM(MID(A2,{1,2,3,4,5,6,7,8,9},1)*{10,9,8,7,6,5,4,3,2}),11),1)


  1. =MID("123456789X0",11-MOD(SUMPRODUCT(MID(A2,ROW($1:$9),1)*(11-ROW($1:$9))),11),1)


13位ISBN号转换为10位
  1. =TEXT(MID(B2,4,9),"0-000-00000-")&MID("123456789X0",11-MOD(SUM(MID(B2,{4,5,6,7,8,9,10,11,12},1)*{10,9,8,7,6,5,4,3,2}),11),1)

其中,B2为13位ISBN数字,从第4至第12位这9个数字用于计算校验码。

10位ISBN号转换为13位
假设ISBN号在A2单元格,公式如下:
  1. =--(978&LEFT(A2,9)&10-MOD(SUM(MID(978&A2,{1,2;3,4;5,6;7,8;9,10;11,12},1)*{1,3}),10))

如何计算10位和13位的ISBN校验码.rar
2楼
水星钓鱼
说数学不好,我是真不信啊
3楼
jackenjun
这个学习,收藏了!
4楼
老糊涂
收藏了

免责声明

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

评论列表
sitemap