Microsoft Access中的代码组合(yyxxxx格式)

问题描述 投票:0回答:2

我正在为要在Microsoft Access中实现的一部分代码而苦苦挣扎。

所需的代码用于项目分配。代码格式包含年份的最后2个数字+ 4位数字,直到新的一年为止,然后是年份的最后2个数字相加1,并且4位数字再次从1开始。例如:

2019:190001 =第一项任务;190002 =第二项任务;等等...

2020:200001 =第一项任务;200002 =第二项任务;等等...

有人可以帮助我如何最好通过VBA在Microsoft Access中对此进行编码吗?这样,我可以将代码分配给“提交”按钮,以避免出现类似的数字。

谢谢!

ms-access ms-access-2013 ms-access-2016
2个回答
0
投票

给定整数格式的代码可以通过多种方式实现,这是一种可能的方法:

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 

0
投票

您可能需要将next任务ID分配给项目。

因此,查找正在使用的最新ID,并添加1以获取下一个任务ID:

NextTaskId = (Year(Date()) \ 100) * 10000 + Nz(DMax("TaskId", "ProjectTable", "TaskId \ 10000 = Year(Date()) \ 100"), 0) Mod 10000 + 1

Nz确保还可以为任务ID分配一年中的第一个任务。

© www.soinside.com 2019 - 2024. All rights reserved.