【问题标题】:checking for duplicates after generating random alphanumeric string in Access在 Access 中生成随机字母数字字符串后检查重复项
【发布时间】:2018-10-16 21:03:08
【问题描述】:

我正在使用这个功能:

https://www.devhut.net/2010/06/22/ms-access-vba-generate-a-random-string/

通过我的表单创建一个随机的字母数字字符串。

这需要是唯一的,所以我需要它来检查列中的唯一性,如果它不是唯一的,则重新生成一个新字符串。如果有更好的方法来生成字符串,我不会与这段代码结婚。

【问题讨论】:

  • 对生成的字符串执行 DLookup()。
  • 你能详细说明一下如何做到这一点吗?
  • 调用函数的过程中的条件代码:If IsNull(DLookup("fieldname", "tablename", "fieldname='" & GetRandomString(,,,) & "'")) Then
  • @June7 它不断返回一个无效的语法错误
      = If IsNull(DLookup("userentry", "tamountupd", "userentry='" & GetRandomStr(6 ,True,False,True) & "'")) 然后
  • 为我工作。编辑您的问题以发布完整的调用过程代码。

标签: ms-access vba


【解决方案1】:

你可以这样做:

Dim Criteria As String
Dim NotFound As Boolean

Do
    RandomString = GetRandomString(StringLength, False, True, False)
    Criteria = "[YourField] = '" & RandomString & "'"
    NotFound = IsNull(DLookup("[YourField]", "[YourTable]", Criteria))
Loop Until NotFound

【讨论】:

    猜你喜欢
    • 2013-08-06
    • 2011-06-18
    • 2010-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 1970-01-01
    • 2021-04-05
    相关资源
    最近更新 更多