microsoft access中的代码组合(yyxxxx格式)
Code combination in microsoft access (yyxxxx format)
我正在努力处理我想在 Microsoft Access 中实现的部分代码。
所需代码用于项目分配。
代码格式为年末2位+4位相加到新的一年,然后年末2位相加为1,4位又从1开始。
例如:
2019 年:
190001 = 第一个任务;
190002 = 第二个任务;
等...
2020 年:
200001 = 第一个任务;
200002 = 第二个任务;
等...
任何人都可以帮助我如何在 Microsoft Access 中对此进行编码,最好是 VBA?
这样我就可以将代码分配给 "submit" 按钮以避免类似的数字。
谢谢!
给定整数格式化代码可以通过多种方式实现,这是一种可能的方法:
Function ProjectCode(ByVal n As Long) As Long
ProjectCode = CLng(Format(Date, "yy") & Format(n, "0000"))
End Function
?ProjectCode(1)
200001
?ProjectCode(2)
200002
?ProjectCode(100)
200100
您可能需要将 下一个 任务 ID 分配给项目。
所以,查找最新使用的id,加1得到下一个任务id:
NextTaskId = (Year(Date()) \ 100) * 10000 + Nz(DMax("TaskId", "ProjectTable", "TaskId \ 10000 = Year(Date()) \ 100"), 0) Mod 10000 + 1
Nz 确保任务 ID 也可以分配给一年中的第一个任务。
我正在努力处理我想在 Microsoft Access 中实现的部分代码。
所需代码用于项目分配。 代码格式为年末2位+4位相加到新的一年,然后年末2位相加为1,4位又从1开始。 例如:
2019 年: 190001 = 第一个任务; 190002 = 第二个任务; 等...
2020 年: 200001 = 第一个任务; 200002 = 第二个任务; 等...
任何人都可以帮助我如何在 Microsoft Access 中对此进行编码,最好是 VBA? 这样我就可以将代码分配给 "submit" 按钮以避免类似的数字。
谢谢!
给定整数格式化代码可以通过多种方式实现,这是一种可能的方法:
Function ProjectCode(ByVal n As Long) As Long
ProjectCode = CLng(Format(Date, "yy") & Format(n, "0000"))
End Function
?ProjectCode(1)
200001
?ProjectCode(2)
200002
?ProjectCode(100)
200100
您可能需要将 下一个 任务 ID 分配给项目。
所以,查找最新使用的id,加1得到下一个任务id:
NextTaskId = (Year(Date()) \ 100) * 10000 + Nz(DMax("TaskId", "ProjectTable", "TaskId \ 10000 = Year(Date()) \ 100"), 0) Mod 10000 + 1
Nz 确保任务 ID 也可以分配给一年中的第一个任务。