Excel VBA中是否有一种方法可用于丢失单元格焦点?

Excel VBA中是否有一种方法可用于丢失单元格焦点?,excel,vba,Excel,Vba,我有一个工作表,目标是在用户输入完成后运行几个宏。我正在寻找当用户退出某个特定单元格时要运行的失去焦点方法 我确实找到了一种方法来完成这项工作,但令我惊讶的是,我没能找到更直接一点的东西。我很好奇是否有更好的方法来完成这项工作 在工作表“MyWorksheet”上,我有一个命名区域,它是用户输入的单个单元格“myNamedRange”,当用户退出该单元格时,宏应该执行。我的当前版本使用工作表\u SelectionChange事件来获得所需的结果 Private Sub Worksheet_Se

我有一个工作表,目标是在用户输入完成后运行几个宏。我正在寻找当用户退出某个特定单元格时要运行的失去焦点方法

我确实找到了一种方法来完成这项工作,但令我惊讶的是,我没能找到更直接一点的东西。我很好奇是否有更好的方法来完成这项工作

在工作表“MyWorksheet”上,我有一个命名区域,它是用户输入的单个单元格“myNamedRange”,当用户退出该单元格时,宏应该执行。我的当前版本使用工作表\u SelectionChange事件来获得所需的结果

Private Sub Worksheet_SelectionChange(ByVal location As Range)

    Static target As Range
    Set target = Worksheets("MyWorksheet").Range("myNamedRange")
    
    Static found As Boolean
   
    If found = True And location.Address <> target.Address Then

        ' Do stuff here
        
    End If

    If location.Address = target.Address Then
        found = True
    Else
        found = False
    End If
    
End Sub
Private子工作表\u selection更改(按VAL位置作为范围)
静态目标作为靶场
设置目标=工作表(“MyWorksheet”)。范围(“myNamedRange”)
静态被发现为布尔值
如果找到=True和location.Address target.Address,则
“在这里做事
如果结束
如果location.Address=target.Address,则
找到=真
其他的
发现=错误
如果结束
端接头

我可能遗漏了一些明显的东西,想知道是否有更好的方法来完成这一点。

最近的是工作表更改事件,如果在编辑模式后单元格发生更改,则会触发该事件。是否所有的工作表事件