|
- '例5.26
- Sub 判断()
- Dim i As Integer, j As Integer, A As String * 18
- Dim m As Integer, n As Integer
- '把B 65536单元格上面第一个非空单元格的行号(Row)赋给变量m。
- m = Range("B65536").End(xlUp).Row
- For n = 2 To m
- A = Range("B" & n)
- '提取身份证编码的第17位(性别编码)
- '比较该位编码对2的模(余数)是否为0
- If Mid(A, 17, 1) Mod 2 = 0 Then
- '模为0表示性别为女,把女赋给单元格Cn
- Range("C" & n) = "女"
- Else
- Range("C" & n) = "男"
- End If
- '依次提取身份证的出生年份:身份证编码的第7~10位,
- '出生月份:身份证编码的第11~12位,出生日期:身份证编码的第13~14位
- Range("D" & n) = Mid(A, 7, 4) & "-" & Mid(A, 11, 2) & "-" & Mid(A, 13, 2)
- j = Range("g65536").End(xlUp).Row
- For i = 1 To j
- '在G列查找等于身份证编码的前六位(户口所在地编码)的单元格
- If Range("G" & i) = Left$(A, 6) Then
- '找到后,把地址名称赋给单元格En
- Range("E" & n) = Range("H" & i)
- End If
- Next i
- Next n
- End Sub
复制代码 不能用LEFT,要用LEFT$ |
|