将文本框条目与包含文本的列(带有“ - ”的字母数字)进行比较,如果找到重复项,则提醒用户

时间:2016-04-12 23:36:58

标签: vba excel-vba excel-2010 excel-vba-mac excel

我的列中包含由字母数字字符和特殊字符组成的文字' - ',如Kat-1,Amp-2,Xua-09等。我尝试了以下代码,但似乎无法识别文字像Kat-1一样重复。任何人都可以检查此代码有什么问题。

Private Sub txt_BPName_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim myrange As Range
Dim match As Boolean
Dim val
Set myrange = Worksheets("Sheet1").Range("A2:A" & Cells(Rows.Count, "A").End(xlUp).row)
match = WorksheetFunction.CountIf(myrange, val) > 0
If match Then
MsgBox ("Duplicate")
Cancel = True
End If
End Sub

1 个答案:

答案 0 :(得分:0)

我认为你应该看一下instr()函数。您可以遍历列,并使用for循环将列中的每个单元格与文本框值进行比较。这可能是最简单的解决方案。如果您发布了speadsheet的摘录,则可以更轻松地编辑您的功能。