如何在vb6中创建基于字符串、日期的自动编号

如何在vb6中创建基于字符串、日期的自动编号,vb6,Vb6,我尝试根据格式字符串、日期和计数器自动编号,如USR20180815001、USR20180815002,当日期/日期更改时,将计数器重置为USR20180806001、USR201806001,等等。这是到目前为止我的代码 Sub AutomaticNumber() Call Connection Set Rs_User = New ADODB.Recordset Rs_User.Open "SELECT * FROM TBL_USER WHERE id_user IN

我尝试根据格式字符串、日期和计数器自动编号,如USR20180815001、USR20180815002,当日期/日期更改时,将计数器重置为USR20180806001、USR201806001,等等。这是到目前为止我的代码

Sub AutomaticNumber()
    Call Connection
    Set Rs_User = New ADODB.Recordset
    Rs_User.Open "SELECT * FROM TBL_USER WHERE id_user IN (SELECT 
    MAX(id_user)FROM TBL_USER)ORDER BY id_user DESC", Conn
    Rs_User.Requery

    Dim x As String * 15
    Dim count As Long

    With Rs_User
        If .EOF Then
            x = "USR" + Format(Date, "yyyymmdd") + "001"
            NewNumber = x
        Else
            If Left(!id_user, 8) <> Format(Date, "yyyymmdd") Then
               x = "USR" + Format(Date, "yyyymmdd") + "001"
            Else
               Count = Right(!id_user, 3) + 1
               x = "USR" + Format(Date, "yyyymmdd") + Right("00" & 
               Count, 2)
            End If
        End If
      NewNumber = x
   End With
End Sub
此代码可能会导致USR201805001,但当我尝试向数据库添加另一条记录时,它无法添加,因为代码无法计数/增加右侧的最后3位数字。因此显示错误重复条目。感谢您的关注。

如果您将id\u用户存储为USR201805001,请不要离开!id_用户,8是USR20180而不是您预期的20180805?还有另一个错误:…+Right00&计数,2个返回值不是