|
发表于 2014-4-19 08:17
|
显示全部楼层
本楼为最佳答案
- Private Sub Worksheet_Change(ByVal Target As Range)
- 'If Target.Column = 9 And Target.Row > 1 Then
- On Error Resume Next
-
- If (Not Intersect(Target, Range("G2:G10")) Is Nothing) Then
- Application.EnableEvents = False
- num = Target.Value
- If Len(num) = 0 Then
- Range("j" & Target.Row).Value = ""
- Range("l" & Target.Row).Value = ""
- '或者cells(target.row,"j").value=""
- 'cells(target.row,"l").value=""
- GoTo quit1
- End If
- If Len(Trim(num)) <> 18 Then: GoTo quit1 '号码不是18位,则退出
- yy = Mid(num, 7, 4) '从第7个字符开始,连续4个字符(以下同理)
- mm = Mid(num, 11, 2)
- dd = Mid(num, 13, 2)
- Cells(Target.Row, "j").Value = DateSerial(yy, mm, dd)
- Cells(Target.Row, "l").Value = "=YEAR(NOW())-YEAR(J" & Target.Row & ")"
- End If
- quit1:
- Application.EnableEvents = True
- End Sub
复制代码 |
评分
-
查看全部评分
|