|
大家先看看这段代码:
Private Sub Contr_Code_KeyPress(KeyAscii As Integer)
Dim MaxCode, PreFix As String
If KeyAscii = Asc("x") Then
MaxCode = DLookup("[MaxContrCode_ZX]", "tbl_MaxCode")
PreFix = Left$(MaxCode, 2) & Right$(Format(DatePart("yyyy", Date), "0000"), 2) & Format(DatePart("m", Date), "00")
If PreFix = Left$(MaxCode, 6) Then
Me.Contr_Code = PreFix & Format(Val(Right$(MaxCode, 4) + 1), "0000")
Else
Me.Contr_Code = PreFix & "0001"
End If
DoCmd.SetWarnings False
DoCmd.RunSQL "Update tbl_MaxCode Set tbl_MaxCode.MaxContrCode_ZX = '" & CStr(Me.Contr_Code) & "'"
Me.Refresh
Me.AllowEdits = True
ElseIf KeyAscii = Asc("s") Then
If Me.Contr_InfoInputBy = Gusername Or DLookup("[User_Class]", "tbl_User", "[User_Name] = '" & Gusername & "'") = "1" Then Me.AllowEdits = True
'OpenForms ("keyin")
'DoCmd.OpenForm "Keyin", acNormal, , , acFormReadOnly, acDialog, "cdwin "
End If
End Sub
我的理解是:当在窗体内的Contr_Code 字段内会按下X键,就会产生一条名为ZX加上年月及四位数的记录,他会更新数据库表tbl_MaxCode,然后我就不知道了,大伙帮忙解释一下代码,最要命的是,如果我想加一条按下A或者B会生成一条ZCA或ZCB加年月及四位数的记录要怎么做才行,完整的代码在这里,http://www.office-cn.net/forum.php?mod=viewthread&tid=25830,大家帮帮我啊,小弟先谢谢了,还有,版主,怎么样才能和您联系上 |
|