VBA VLookup If Match MsgBox否则继续



我有一个用于查找帐户列表的模板。它有点像一个工作流工具,其中选项卡1显示活动帐户的列表。选项卡2是进行数据格式化的地方,选项卡3是列出已完成帐户的地方。这正被多个人使用。因此,当他们处理列表时,我想应用一些错误处理,将vlookup应用于用户选择的帐户,只是为了查看另一个用户是否已经在完成的选项卡中。

所以从本质上讲,我真的希望它能对照完整的列表进行Vlookup。如果是一场比赛,那么用msgbox说";此帐户已完成";,否则继续格式化数据。

我试图使用的代码是:

Set WsInput = Sheets("Account Search")
Set PolLookup = WsInput.Range("U3")
Set PolRange = Sheets("Completed Accounts").Range("B5:B15000")
With WsInput
.Range("U3").Value = Application.VLookup(PolLookup, PolRange, 1, False)
If IsError(.Range("U3").Value) Then
*Format Data
Else
MsgBox "This account has already been completed", vbExclamation
Sheets("Completed Accounts").Select
Exit Sub
End If
End With

然而,我似乎无法让它发挥作用。如果我在里面放了一个匹配的账号,它就会进入消息框,这就是我想要的,但如果我在其中放了一一个新号码,它也会进入消息框?

如有任何帮助或建议,我们将不胜感激。

感谢

Sub Check()
Dim sPol As String, rngPol As Range
sPol = Sheets("Account Search").Range("U3").Value
Set rngPol = Sheets("Completed Accounts").Range("B5:B15000")
If IsError(Application.VLookup(sPol, rngPol, 1, False)) Then

' do something
MsgBox sPol & " not completed"
Else
MsgBox "Account " & sPol & " has already been completed", vbExclamation
Sheets("Completed Accounts").Select
Exit Sub
End If
End Sub

最新更新