第一篇:身份證號碼函數(shù)
用vlookup函數(shù),及其他各項功能,通過身份證號得出了出生日期、性別、戶籍所在地等多項信息,并加入了身份證號正確性驗證機制和15位、18位號碼的轉(zhuǎn)換功能。
詳細制作步驟
要想了解身份證的秘密,首先讓我們了解一下我國現(xiàn)行的公民身份證標準。1.我國現(xiàn)行使用公民身份證號碼有兩種標準。2.15位身份證號碼(六位數(shù)字地址碼,六位數(shù)字出生日期碼,三位數(shù)字順序碼)。
3.18位身份證號碼(六位數(shù)字地址碼,八位數(shù)字出生日期碼,三位數(shù)字順序碼和
一位數(shù)字校驗碼)。
4.5.地址碼表示編碼對象常住戶口所在縣(市、旗、區(qū))的行政區(qū)劃代碼。
6.日期碼表示編碼對象出生的年、月、日,其中年份用四位數(shù)字表示,年、月、日之間不用分隔符。
7.順序碼表示同一范圍內(nèi)對同年、月、日出生的人員編定的順序號。奇數(shù)分給男性,偶數(shù)分給女性。
8.校驗碼是根據(jù)前面十七位數(shù)字碼計算出來的檢驗碼。
復制代碼
了解了以上知識后,讓我們來制作Excel表。
1.新建一個Excel文檔,2.將Sheet1重命名為“身份證信息”,在第1行各列中依次輸入“身份證號碼、十五位身份證號碼、十八位身份證號碼、性別、出生日期、年齡、省份、市、區(qū)縣”等文字,并將“出生日期”列設(shè)置為日期(yyyy.mm.dd)格式,其余列
設(shè)置為文本格式。
3.將Sheet2重命名為“區(qū)域信息”,從國家統(tǒng)計局下載到最新縣及縣以上行政
區(qū)劃代碼,經(jīng)整理后分別導入到“區(qū)域信息”的A、B兩列中,以便查詢。
復制代碼
到此,Excel表框架搭建完成,我們來寫入函數(shù)完成查詢。
第一步 判斷號碼是否為正確的身份證號
一個正確的身份證號碼,要符合以下幾個標準:
①應(yīng)為15位或18位;
②要包含數(shù)字(0-9)或字符(X);
③18位身份證號最后一位是真正的校驗碼。
如果上面三個條件都滿足,則是正確的身份證號。
我們利用Excel單元格的“有效性”限制來完成校驗。
具體方法是選擇“身份證信息”表,全選“身份證號碼”列,選擇“數(shù)據(jù)-有效性”菜單命令,在彈出的窗口“設(shè)置”標簽中,將有效性條件的“允許”設(shè)置為“自定義”、“公式”
設(shè)置為
=
OR(LEN(A2)=15,IF(LEN(A2)=18,MID(“10X98765432”,MOD(SUM(MID(A2,ROW(INDIRECT(“1:17”)),1)*2^(18-ROW(INDIRECT(“1:17”)))),11)+1,1)=RIGHT(A2))),如圖一。
在“出錯警告”標簽中,設(shè)置出錯提示信息,如圖二。
第二步 15位和18位身份證號碼的互換
具體方法是選擇“身份證信息”表,在B2單元格中輸入
=IF(LEN(A2)=15,A2,LEFT(REPLACE(A2,7,2,),15));
在C2單元格中輸入
{=IF(LEN(A3)=15,REPLACE(A3,7,19)&MID(“10X98765432”,MOD(SUM(MID(REPLACE(A3,7,19),ROW(INDIRECT(“1:17”)),1)*2^(18-ROW(INDIRECT(“1:17”)))),11)+1,1),A3)} 這里要注意是數(shù)組!
第三步 判斷性別
如果是15位的,則取最后一位;
如果是18位的號,則取倒數(shù)第二位;
最后判斷該數(shù)值的奇偶性即可。
具體方法是選擇“身份證信息”表,在D2單元格中輸入
=IF(A2<>“",IF(MOD(RIGHT(LEFT(A2,17)),2),”男“,”女“),)
第四步 判斷出生日期
如果是15位的,則取第7至12位,在年份數(shù)前加上“19”;
如果是18位的,則直接取第7至14位;
具體方法是選擇“身份證信息”表,在E2單元格中輸入
=IF(A2<>”“,TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),”#-00-00“)+0,)
第五步 判斷年齡
這里利用一個Excel的隱藏函數(shù) DATEDIF()
基本語法: =DATEDIF(開始日期,結(jié)束日期,單位代碼),用“Y”來表示年份。具體方法是選擇“身份證信息”表,在F2單元格中輸入
=IF(A2<>”“,DATEDIF(TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),”#-00-00“),TODAY(),”Y“),)
第六步 判斷籍貫,包括省份、市、區(qū)縣
這是本期比賽最難的一部分,關(guān)鍵在于如何多重判斷省份、市、區(qū)縣信息。
首先要知道地址碼的構(gòu)成。代碼前兩位是省或直轄市代碼,中間兩位是市代碼,最后兩位是區(qū)縣代碼。
其次是數(shù)據(jù)存放?!皡^(qū)域信息”表中已經(jīng)存放了查詢所需的數(shù)據(jù),將數(shù)據(jù)區(qū)命名為“Code”以便查詢。如圖三
最后利用VLOOKUP函數(shù)來查詢數(shù)據(jù)。
基本語法:=VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
具體方法是選擇“身份證信息”表,在G2單元格中輸入=IF(A2<>”“,VLOOKUP(LEFT(A2,2)&”0000“,code,2,),)
在G2單元格中輸入=IF(A2<>”“,VLOOKUP(LEFT(A2,4)&”00“,code,2,),)
在G2單元格中輸入=IF(A2<>”",VLOOKUP(LEFT(A2,6),code,2,),)
最后一步 根據(jù)需要拖拽
剛才所寫的公式只是在第2行寫入的,大家可以根據(jù)需要向下拖拽,具體方法略去。
第二篇:SQLServer中獲取18位身份證號碼校驗碼的函數(shù)
在SQL Server中編寫獲取18位身份證的校驗碼函數(shù)
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER FUNCTION [dbo].[fn_getChkVal](@IDCardNo nvarchar(18))RETURNS nvarchar(1)AS BEGIN Declare @iSum integer,@iMod integer if len(@IDCardNo)<>18 return '' if LEFT(@IDCardNo,17)like '%[^0-9]%' RETURN ''--判斷1-17位是否為數(shù)字0-9,如果不是退出
set @iSum= cast(substring(@IDCardNo,1,1)as int)*7 set @iSum=@iSum+cast(substring(@IDCardNo,2,1)as int)*9 set @iSum=@iSum+cast(substring(@IDCardNo,3,1)as int)*10 set @iSum=@iSum+cast(substring(@IDCardNo,4,1)as int)*5 set @iSum=@iSum+cast(substring(@IDCardNo,5,1)as int)*8 set @iSum=@iSum+cast(substring(@IDCardNo,6,1)as int)*4 set @iSum=@iSum+cast(substring(@IDCardNo,7,1)as int)*2 set @iSum=@iSum+cast(substring(@IDCardNo,8,1)as int)*1 set @iSum=@iSum+cast(substring(@IDCardNo,9,1)as int)*6 set @iSum=@iSum+cast(substring(@IDCardNo,10,1)as int)*3 set @iSum=@iSum+cast(substring(@IDCardNo,11,1)as int)*7 set @iSum=@iSum+cast(substring(@IDCardNo,12,1)as int)*9 set @iSum=@iSum+cast(substring(@IDCardNo,13,1)as int)*10 set @iSum=@iSum+cast(substring(@IDCardNo,14,1)as int)*5 set @iSum=@iSum+cast(substring(@IDCardNo,15,1)as int)*8 set @iSum=@iSum+cast(substring(@IDCardNo,16,1)as int)*4 set @iSum=@iSum+cast(substring(@IDCardNo,17,1)as int)*2
set @iMod=@iSum % 11
return substring('10X98765432',@imod+1,1)END
第三篇:身份證號碼證明
證明
經(jīng)戶口登記機關(guān)審核,我轄區(qū)居民(曾用名),性別:,民族:,出生年月日:,原公民身份證號碼為:□□□□□□□□□□□□□□□□□□,現(xiàn)因需更正,新公民身份證號碼為:□□□□□□□□□□□□□□□□□□。兩號碼實屬同一人。
特此證明
省市公安局
聯(lián)系電話:(派出所)
(蓋戶口專用章)
年月日
第四篇:居民身份證號碼
居民身份證號碼 基本簡介 編輯本段
居民身份證是國家法定的證明公民個人身份的證件。為了堵塞和制止假居民身份證的流通和使用,在查驗和核查居民身份證時可掌握以下幾個要點:[2]
1.1
一、有效期限
居民身份證的有效期限分為10年、20年、長期三種。1居民身份證號碼6周歲至25周歲的,發(fā)給有效期為10年的居民身份證;26周歲至45周歲的,發(fā)給有效期為20年的居民身份證;46周歲以上的,發(fā)給長期有效的居民身份證。證件有效期限從簽發(fā)之日起計算。如某人1949年9月20日出生,1984年35周歲時申領(lǐng)居民身份證,簽發(fā)日期為1984年12月31日,他屬于26至45周歲這一年齡段,證件有效期限屬于20年這一檔次,到2004年12月30日有效期滿。查驗或檢查時,應(yīng)對照檢查證件有效期限與持證人年齡,簽發(fā)日期三者之間的關(guān)系。
1.2
二、編號識別
1、身份證編碼規(guī)則如下:根據(jù)〖中華人民共和國國家標準GB11643-1999〗中有關(guān)公民身份號碼的規(guī)定,公民身份號碼是特征組合碼,由十七位數(shù)字本體碼和一位數(shù)字校驗碼組成。排列順序從左至右依次為:六位數(shù)字地址碼,八位數(shù)字出生日期碼,三位數(shù)字順序碼和一位數(shù)字校驗碼。地址碼(身份證前六位)表示編碼對象第一次申領(lǐng)居民身份證時的常住戶口所在縣(市、旗、區(qū))的行政區(qū)劃代碼。(所有區(qū)域的編碼可以到網(wǎng)站查詢到最新的縣及縣以上的行政編碼資料。)生日期碼(身份證第七位到第十四位)表示編碼對象出生的年、月、日,其中年份用四位數(shù)字表示,年、月、日之間不用分隔符。例如:1981年05月11日就用19810511表示。順序碼(身份證第十五位到十七位)是縣、區(qū)級政府所轄派出所的分配碼,每個派出所分配碼為10個連續(xù)號碼,例如“000-009”或“060-069”,其中單數(shù)為男性分配碼,雙數(shù)為女性分配碼,如遇同年同月同日有兩人以上時順延第二、第三、第四、第五個分配碼。如:007的就是個男生,而且和他同年月日生的男生至少有兩個,他們的后四位是001*和003*。分配順序碼中“999、998、997、996”四個順序號分別為男女性百歲以上老人專用的特定編號。校驗碼(身份證最后一位)是根據(jù)前面十七位數(shù)字碼,按照ISO7064:1983.MOD11-2校驗碼計算出來的檢驗碼。
2、從1999年10月1日起,全國實行公民身份證號碼制度,居民身份證編號由原15位升至18位。前6位為地址碼;第七位至14位為出生日期碼,此碼由6位數(shù)改為8位數(shù),其中年份用4位數(shù)表示;第15位至17位為順序碼,取消了順序碼中對百歲老人使用的特定編號;第十八位為校驗碼,主要是為了校驗計算機輸入公民身份證號碼的前17位數(shù)字是否正確,其取值范圍是0至10,當值等于10時,用羅馬數(shù)字符χ表示。
1.3
三、校驗碼的計算方法
1、將前面的身份證號碼17位數(shù)分別乘以不同的系數(shù)。從第一位到第十七位的系數(shù)分別為:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
2、將這17位數(shù)字和系數(shù)相乘的結(jié)果相加。
3、用加出來和除以11,看余數(shù)是多少?
4、余數(shù)只可能有0-1-2-3-4-5-6-7-8-9-10這11個數(shù)字。其分別對應(yīng)的最后一位身份證的號碼為1-0-X -9-8-7-6-5-4-3-2。居民身份證號碼
5、通過上面得知如果余數(shù)是2,身份證的最后一位號碼就是羅馬數(shù)字x。如果余數(shù)是10,就會在身份證的第18位數(shù)字上出現(xiàn)的是2。例如:某男性的身份證號碼是oooooooooooooooooX。我們要看看這個身份證是不是合法的身份證。首先我們得出前17位的乘積和是189,然后用189除以11得出的結(jié)果是17+2/11,也就是說其余數(shù)是2。最后通過對應(yīng)規(guī)則就可以知道余數(shù)2對應(yīng)的是羅馬數(shù)字X。所以,可以判定這是一個合格的身份證號碼。號碼構(gòu)成 編輯本段
2.1 1 地址碼
(身份證號碼前六位)表示編碼對象常住戶口所在縣(市、鎮(zhèn)、區(qū))的行政區(qū)劃代碼。1-2位省、自治區(qū)、直轄市代碼; 3-4位地級市、省、自治州代碼; 5-6位縣、縣級市、區(qū)代碼。
2.2 2 生日期碼
(身份證號碼第七位到第十四位)表示編碼對象出生的年、月、日,其中年份用四位數(shù)字表示,年、月、日之間不用分隔符。例如:1981年05月11日就用19810511表示。
2.3 3 順序碼
(身份證號碼第十五位到十七位)地址碼所標識的區(qū)域范圍內(nèi),對同年、月、日出生的人員編定的順序號。其中第十七位奇數(shù)分給男性,偶數(shù)分給女性。
2.4 4 校驗碼
(身份證號碼最后一位)是根據(jù)前面十七位數(shù)字碼,按照ISO 7064:1983.MOD 11-2校驗碼計算出來的檢驗碼。作為尾號的校驗碼,是由號碼編制單位按統(tǒng)一的公式計算出來的,如果某人的尾號是0-9,都不會出現(xiàn)X,但如果尾號是10,那么就得用X來代替,因為如果用10做尾號,那么此人的身份證就變成了19位,而19位的號碼違反了國家標準,并且中國的計算機應(yīng)用系統(tǒng)也不承認19位的身份證號碼。Ⅹ是羅馬數(shù)字的10,用X來代替10,可以保證公民的身份證符合國家標準。一般使用 編輯本段
公民在辦理下列事務(wù),需要證明身份時,可以出示居民身份證:
(一)選民登記;
(二)戶口登記;
(三)兵役登記;
(四)婚姻登記;
(五)入學,就業(yè);
(六)辦理公證事務(wù);
(七)前往邊境管理區(qū);
(八)辦理申請出境手續(xù);
(九)參與訴訟活動;
(十)辦理機動車,船駕駛證和行駛證,非機動車執(zhí)照;居民身份證號碼
(十一)辦理個體營業(yè)執(zhí)照;
(十二)辦理個人信貸事務(wù);
(十三)參加社會保險,領(lǐng)取社會救濟;
(十四)辦理搭乘民航飛機手續(xù);
(十五)投宿旅店辦理登記手續(xù);(十六)提取匯款,郵件;(十七)寄賣物品;(十八)辦理其他事務(wù).除公安機關(guān)依法對被告人采取強制措施可以扣留居民身份證外,其他任何單位和個人不得扣留公民的居民身份證或者作為抵押.4 查詢收費 編輯本段
[1]國家發(fā)展改革委日前在其官方網(wǎng)站上發(fā)布關(guān)于全國公民身份證號碼查詢服務(wù)中心有關(guān)收費問題的通知。通知稱,對有關(guān)單位出示的公民身份信息進行比對,提供“一致”或“不一致”信息服務(wù),可收取公民身份認證服務(wù)費,收費標準為:比對內(nèi)容五項以下(含五項),每次5元;比對內(nèi)容五項以上,每次10元。通知說,根據(jù)用戶需求,提供人口數(shù)據(jù)信息匯總、加工或重新制作等服務(wù),可收取人口信息開發(fā)服務(wù)費,收費標準為每次50元。對特殊需求的,收費標準由查詢中心與用戶協(xié)商確定。按規(guī)定向國家機關(guān)、社會福利公益機構(gòu)和公民提供上述服務(wù)不得收取費用。通知指出,查詢中心不得提供可能危及國家安全、公共安全、經(jīng)濟安全和社會穩(wěn)定的有關(guān)信息服務(wù)。通知強調(diào),公安部門不得強制公民、法人或其他組織到查詢中心接受咨詢、查詢等服務(wù)并收取費用。通知稱,查詢中心收取上述費用應(yīng)使用稅務(wù)發(fā)票,依法納稅,并嚴格執(zhí)行規(guī)定的收費項目和收費標準,自覺接受價格主管部門的監(jiān)督檢查。國家發(fā)展改革委關(guān)于全國公民身份證號碼查詢服務(wù)中心有關(guān)收費問題的通知公安部:你部《關(guān)于申請核定身份認證服務(wù)收費標準的函》(公科信[2010]61號)收悉??紤]到你部所屬全國公民身份證號碼查詢服務(wù)中心(以下簡稱“查詢中心”)為自收自支的事業(yè)單位,負責全國公民身份信息的收集處理和全國公民身份信息系統(tǒng)的建設(shè)、管理、運營,向社會提供公民身份認證等服務(wù),經(jīng)研究,現(xiàn)就公民身份認證等服務(wù)收費標準及有關(guān)問題通知如下:
一、查詢中心按照自愿有償原則提供下列服務(wù),不屬于政府行為,其收費作為經(jīng)營服務(wù)性收費管理。
(一)對有關(guān)單位出示的公民身份信息進行比對,提供“一致”或“不一致”信息服務(wù),可收取公民身份認證服務(wù)費,收費標準為:比對內(nèi)容五項以下(含五項),每次5元;比對內(nèi)容五項以上,每次10元。
(二)根據(jù)用戶需求,提供人口數(shù)據(jù)信息匯總、加工或重新制作等服務(wù),可收取人口信息開發(fā)服務(wù)費,收費標準為每次50元。對特殊需求的,收費標準由查詢中心與用戶協(xié)商確定。
(三)按規(guī)定向國家機關(guān)、社會福利公益機構(gòu)和公民提供上述服務(wù)不得收取費用。
二、查詢中心不得提供可能危及國家安全、公共安全、經(jīng)濟安全和社會穩(wěn)定的有關(guān)信息服務(wù)。
三、公安部門不得強制公民、法人或其他組織到查詢中心接受咨詢、查詢等服務(wù)并收取費用。
四、查詢中心收取上述費用應(yīng)使用稅務(wù)發(fā)票,依法納稅,并嚴格執(zhí)行規(guī)定的收費項目和收費標準,自覺接受價格主管部門的監(jiān)督檢查。
五、上述規(guī)定自2010年10月1日起試行,試行期2年,試行期滿后由你部報我委重新審批。身份證號查詢:通過身份證號碼可以查詢地區(qū)信息,并且可以進行地區(qū)定位.
第五篇:身份證號碼證明
公民身份證號碼更正證明
本轄區(qū)公民吳彥(曾用名),女,漢族,河南省泌陽縣泌水鎮(zhèn)新村居委會住。
原使用的公民身份號碼為:
系(重 / 錯)號。根據(jù)《中華人民共和國居民身份證法》的有關(guān)規(guī)定及公民身份號碼的編制原則,為確保公民身份證號碼的準確性和唯一性,自2008 年月日起將原號碼更正為:
特此證明
河南省泌陽縣泌水派出所
2011 年9 月22 日
注:請為申請人吳彥辦理公民身份號碼變更的相關(guān)事宜。此件為原件,如需要請留存復印件。、