Vba If-Then语句循环

Vba If-Then语句循环,vba,messagebox,Vba,Messagebox,我已经创建了一个If-Then语句代码,如果存在重复项,它将打开一个消息框 我的问题是,当存在重复项时,我无法退出消息框。这就像是一个循环 我的代码是: Private Sub Worksheet_Change(ByVal Target As Range) If Sheets("IELTS Passed").Range("O1").Value = "True" Then MsgBox "This Applicant already exist!" End If 顺便说一句,范围(“O1

我已经创建了一个If-Then语句代码,如果存在重复项,它将打开一个消息框

我的问题是,当存在重复项时,我无法退出消息框。这就像是一个循环

我的代码是:

Private Sub Worksheet_Change(ByVal Target As Range)
If Sheets("IELTS Passed").Range("O1").Value = "True" Then
    MsgBox "This Applicant already exist!"
End If
顺便说一句,范围(“O1”)包含一个公式,该公式将在“雅思及格”表中查找任何重复项


任何帮助都将不胜感激

好的,一个很好的选择是,当单元格中发生变化时,仅运行If-Then部分,这对O1单元格具有修改效果

请使用目标参数:

  If Not Application.Intersect(Target, RangeWhichAffectsThisCell) is Nothing Then

‘Your code comes here

End if
另一种方式:

在代码末尾,删除导致MessageBox弹出的申请者条目(无论其单元格位于何处)。我假设这会将O1单元格设置为“False”


但是,我们不知道所有的细节,因此我们无法给您100%的准确答案。

您不能退出消息框,还是处于循环中?页面上是否有其他事件发生?@ashleedawg我可以退出消息框,但需要大量单击“关闭”按钮。您好@iSpain17,您提供的代码工作非常完美!非常感谢你!