基于首字母的最大值(MS访问表单)

时间:2015-03-17 10:40:47

标签: forms ms-access auto-generate

我正在尝试创建一个表单,其中ID将根据首字母给出最大数量。以下是表格中的记录样本:

Employee ID |   Employee Name   |   Designation 
------------+-------------------+--------------
CL-100      |   Akram waziullah |   Cleaner
GU-100      |   Shopno Lal      |   Guard       
LG-100      |   Karim Lalon     |   L&G Serviceman  
GU-101      |   Lal Miah        |   Guard   

我想创建一个表单,系统可以根据首字母自动生成ID。例如,如果我选择防护作为指定,ID将是GU-102,如果我选择清洁器,它将是CL-101,如果我选择电工,它将是EL-100(因为以前没有电工记录) 。我能够生成指定的前两个字母,但我不知道如何根据首字母提取最大值。需要帮助......

1 个答案:

答案 0 :(得分:0)

在表单中的相关控件中,您可以使用以下代码。

DMAX("CLng(Right([Employee ID],(LEN([Employee ID])-3))","[tblEmployees]","[Designation]='" & Me.Designation & "'")+1

或者,您可以将其添加到Form

之前的Update事件中
Private Sub Form_BeforeUpdate(Cancel As Integer)
    me.EmployeeID = DMAX("CLng(Right([Employee ID],(LEN([Employee ID])-3))","[tblEmployees]","[Designation]='" & Me.Designation & "'")+1
End Sub