上能玩轉(zhuǎn)函數(shù)公式,下能調(diào)戲vba代碼,,左能做得村里的主,,右能修得了手機! 不要迷戀哥,,哥只是個傳說,! 傳說中的土豆哥除了不會生孩子(娃從他肚中出來),其他啥都會,! 言歸正傳,,一起來看看今天土豆哥給咱帶啥好玩的了! 話說土豆哥有個好差事—村官,,本是兼職,,做著做著成本職工作了。 因上了個新系統(tǒng),,土豆哥需要將手里好幾個村的數(shù)據(jù)都導(dǎo)入進去,,結(jié)果好多都顯示“公民身份證號碼格式錯誤!” 沒辦法,,土豆哥找來戶口本核對,,原來是一開始錄數(shù)據(jù)的妹子將身份證號碼錄錯了,導(dǎo)致數(shù)據(jù)無法導(dǎo)進系統(tǒng),。 好幾個村幾十萬的數(shù)據(jù),,如何驗證身份證的真假,這能難倒咱們的土豆哥嗎,?函數(shù)公式,、自定義函數(shù)齊上陣,就是這么犀利,! 簡化模擬數(shù)據(jù)如下: 身份證號碼的最后一位就是校驗碼,,是根據(jù)〖中華人民共和國國家標(biāo)準(zhǔn)GB11643-1999〗中有關(guān)公民身份號碼的規(guī)定,根據(jù)精密的計算公式計算出來的。 最后一位數(shù)字校驗碼是由前17位唯一確定的,,隨便亂填的身份證號就不能通過校驗,。 身份證號碼校驗碼的計算: (1)17位數(shù)字本體碼加權(quán)之和 S = SUM(Ai * Wi) i = 0,1,2,...,16即17位數(shù)字 Ai:表示第i位置上的身份證號碼數(shù)字的值 Wi:表示第i位置上的加權(quán)因子 即:Wi數(shù)位:7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2 (2)17位數(shù)字值加權(quán)之和取模 T= S MOD 11 (3)取模得到對應(yīng)的數(shù)位值:0 1 2 3 4 5 6 7 8 9 10,即11位 VerTi 校驗碼值:1 0 X 9 8 7 6 5 4 3 2 ,,即11位 一一對應(yīng)
公式: =MID('10X98765432',MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*2^(18-ROW($1:$17))),11) 1,1)=RIGHT(A2) 算法思路解析: 比如身份證號碼:510122200001116815 (1)算出加權(quán)之和 (2)17位數(shù)字值加權(quán)之和取模 (3)根據(jù)余數(shù)與校驗碼對應(yīng) 余數(shù)7對應(yīng)的校驗碼是5,,該身份證號最后一位數(shù)是5,所以該身份證是真的,。
趕緊拿出自己的身份證驗證下吧,! 作者:犀利土豆哥 |
|