根据下拉列表中的选定项目更改活动工作表

时间:2018-04-19 22:56:49

标签: excel-vba vba excel

我有一个包含多个表格的Excel工作簿。我希望能够从“主页”表格中的下拉列表中进行选择,选择完成后,自动切换到正确的工作表并选择特定的单元格。

这似乎很容易,但我一次又一次地失败以使其发挥作用 以下是我想要做的一个例子:

Example

我设法取得一些成功的唯一代码如下:

Private Sub Worksheet_Activate()
    With Sheets("Home")
        If Cells(6, 3).Value = "A" Then
            Sheets("A").Select
            ActiveSheet.Range("B7").Select
        End If
    End With
End Sub

问题在于,在用户移动到另一张纸之前,它不会检查该值。然后当它返回时,它将检查它,并将它带到正确的一个,但是用户将陷入循环而不能返回到“Home”。 (我知道它只适用于单元格C6,但我只是想在尝试更改范围之前尝试它)

1 个答案:

答案 0 :(得分:0)

您需要工作表更改事件,而不是激活。在Home sheet模块中试试这个。

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$C$6" Then
    Application.Goto Sheets(Target.Text).Range("B7")
End If

End Sub