激活其他工作表后,Excel单元格仍处于编辑模式

时间:2016-01-25 09:41:05

标签: excel vba excel-vba

En Excel / VBA,当双击工作表A中的单元格时,我想显示用户窗体,然后激活工作表B.
这是有效的,但每当我编辑工作表B中的任何单元格时,工作表A中的单元格仍然可以获得输入。

在工作表" A":

  Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    UserForm1.Show
    End sub

UserForm取消按钮:

Private Sub CancelButton1_Click()
    UserForm1.Hide
    Worksheets("B").Activate
End Sub

在表A中,excel打开一个用户表单,我点击取消,它确实进入表B.但无论我在B中键入什么,都进入A.
作为解决方法我需要手动转到A,然后再去B. 我该如何避免这种情况? BeforeRightClicking事件也会出现同样的问题,似乎是因为激活是通过用户表单完成的。

1 个答案:

答案 0 :(得分:2)

您的代码似乎没问题。激活Sheet(B)上的任何单元格,以确保在Sheet (B)中编辑单元格。使用Range("A1").Activate或任何单元格。

Private Sub CancelButton1_Click()
    Worksheets("B").Activate
    Range("A1").Activate
    UserForm1.Hide
End Sub