Button元件*2, Label元件 *2, TextBox元件 *1
程式碼
Dim idNo, D(9) As String
idNo = UCase(Label1.Text)
If (Len(Label1.Text) <> 10) Then
Label2.Text = "身份字號為10個字元"
ElseIf (Mid(idNo, 1, 1) < "A") Or (Mid(idNo, 1, 1) > "Z") Then
Label2.Text = "身份字號第一個字元需為字母"
Else
For i = 0 To 9 ' 身份證號逐一讀到陣列D中
D(i) = Mid(idNo, i + 1, 1)
Next
Dim x, x1, x2, y As Integer
'字母轉換 A-10 B-11 ........O-35 I&O位置未照順序
x = InStr("ABCDEFGHJKLMNPQRSTUVXYWZIO", D(0)) + 9
x1 = x \ 10 ' 取x的十位數
x2 = x Mod 10 ' 取x的個位數
y = x1 + 9 * x2 + 8 * Val(D(1)) + 7 * Val(D(2)) + 6 * Val(D(3))
+ 5 * Val(D(4)) + 4 * Val(D(5)) + 3 * Val(D(6)) + 2 * Val(D(7)) _
+ Val(D(8)) + Val(D(9))
If ((y Mod 10) <> 0) Then
Label2.Text = "身份字號輸入錯誤 ! ....."
Else
Label2.Text = "身份字號輸入正確 ! ....."
End If
End If
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
End
End Sub