【问题标题】:ACCESS VBA Preventing duplicate value creation based on two criteriaACCESS VBA 根据两个标准防止重复创造价值
【发布时间】:2018-10-18 05:05:57
【问题描述】:
我有一个从另一个 listbox1 填充的列表框。用户从列表框中选择数据并单击导致数据在表中输入的按钮。我有一个问题是我不希望再次在表中输入相同的值,即
一个字段是一个 ID,另一个字段是一个文本值,只有当这两个值都相等时,我才希望弹出一个消息框,说明创建了一个重复值。
有人可以帮我解决这个问题吗?
【问题讨论】:
-
尝试使用 DlookUp。当用户单击按钮时,使用 DlookUp 检查该值是否已存在于表中,然后如果它是 true 或 false,则执行您需要的任何操作。
标签:
ms-access
vba
ms-access-2010
ms-access-2007
ms-access-2013
【解决方案1】:
您必须将此过程分为两个部分 - 检查重复项,然后添加到表中。您可以使用以下内容进行检查,它将列表框与文本框进行比较:
Dim text As String
Dim i As Integer
If me.ListBox1.MultiSelect = 0 'only one selection
if me.ListBox1.Value = me.textbox1.value
msgbox "Multiple Values. Please try again", vbOkOnly
End
end if
elseif 'multiple selections
For i = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(i)=me.textbox1.value Then
msgbox "Multiple Values. Please try again", vbOkOnly
End
End If
Next i
end if
'现在向表格添加行