在我的数据库中,序列号存储为整数。 我想在具有不同形式的Access-frontend组合框中表示这些数字:
当选择一个数字时,它应该再次存储为整数。
我已经尝试使用一些 VBA 代码填充组合框:
选择后,我使用 afterUpdate-Event 将其转换回整数值并将其存储在我的表格中。
这种方法非常有效,但填充组合框需要很长时间(对于20,000个数字,需要4秒)。
有更快的方法吗?
当我只使用普通整数字段作为记录源时,立即填充该框。
修改
'populate Combobobox:
Set db = CurrentDb
strSQL = "SELECT intSerialNumber FROM tblXXXX"
Set rs = db.OpenRecordset(strSQL)
Do While Not rs.EOF
strCurrentSerNum = rs.Fields(0).Value
Dim strSerNum As String
'xxxxxxxxx to xx.xx.xxxxx when possible
If (Len(strCurrentSerNum)) = 9 Then
strSerNum = Left(strCurrentSerNum, 2) & "." &
Mid(strCurrentSerNum, 3, 2) & "." & Right(strCurrentSerNum, 5)
Else
strSerNum = strCurrentSerNum
End If
cboSerNum.AddItem (strSerNum)
rs.MoveNext
Loop
答案 0 :(得分:0)
您应该使用输入掩码属性。
有效输入掩码可以实现以下目标:
##.##.#####;;