IDカード検証コード関数
functioncheckcardid(e)
arrverifyCode = split( "1,0、x、9,8,7,6,5,4,3,2"、 ")
wi = split( "7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2"、 ")
Checker = split( "1,9,8,7,6,5,4,3,2,1,1,1"、 ")、")
iflen(e)<15orlen(e)= 16orlen(e)= 17orlen(e)> 18then
checkcardid = "ID番号には15のコードまたは18桁の合計があります」
checkcardid = false
exitFunction
endif
ディマイ
iflen(e)= 18then
ai = mid(e、1,17)
elseiflen(e)= 15then
ai = e
ai = left(ai、6)& "19"&mid(ai、7,9)
endif
ifnotisnumeric(ai)then
checkcardid = "最後の数字を除いて、IDカードは番号でなければなりません!"
exitFunction
endif
DimStryear、Stronth、Strday
stryear = cint(mid(ai、7,4))
strmonth = cint(mid(ai、11,2))
strday = cint(mid(ai、13,2))
誕生日=トリム(ストライア)+" - "+トリム(strmonth)+" - "+トリム(strday)
ifisdate(誕生日)
ifdatediff( "yyyy"、今、誕生日)<-140orcdate(誕生日)> date()then
checkcardid = "IDカードが誤って入力されました!"
exitFunction
endif
ifstromth> 12orstrday> 31then
checkcardid = "IDカードが誤って入力されました!"
exitFunction
endif
それ以外
checkcardid = "IDカードが誤って入力されました!"
exitFunction
endif
ディミ、トータルムライウィ
fori = 0to16
TotalMulaiwi = TotalMulaiwi+Cint(Mid(AI、I+1,1))*Wi(i)
次
dimmodvalue
modvalue = totalmulaiwimod11
dimstrverifycode
strverifycode = arrverifyCode(modvalue)
ai = ai&strverifycode
checkcardid = ai
iflen(e)= 18ande <> aithen
checkcardid = "誤って入力された身分証明書番号!"
exitFunction
endif
エンド機能
Respons.writecheckcardid( "528337194801020025") '' '' '' '' '' '' ''これが誰なのかわからない、私はそれを試した~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
'' '' 'これは返されたIDカードが入力された場合、それが正しいことを意味します。そうしないと、エラーがプロンプトされます...