Vba 不同工作表上的选择更改

Vba 不同工作表上的选择更改,vba,excel,filtering,Vba,Excel,Filtering,您好,我正在尝试找到与选择更改事件有关的问题的解决方案: 我有一份工作表,上面有产品清单和所有相关细节。在另一张工作表上,我有相同的产品和其他信息。我想做的是单击第一张表中的product单元格,并在第二张表中对其进行过滤。ON/OFF选项用于在已启用双击宏的文件中启用/禁用此功能。谢谢你的调查 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim rngF As Range Dim rngFS As

您好,我正在尝试找到与选择更改事件有关的问题的解决方案: 我有一份工作表,上面有产品清单和所有相关细节。在另一张工作表上,我有相同的产品和其他信息。我想做的是单击第一张表中的product单元格,并在第二张表中对其进行过滤。ON/OFF选项用于在已启用双击宏的文件中启用/禁用此功能。谢谢你的调查

 Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim rngF As Range
    Dim rngFS As Range

    Dim lRow As Long
    Dim lCol As Long
    Set rngF = ActiveSheet.AutoFilter.Range
    Set rngFS = ActiveSheet.Range("FilterStatus")

    lCol = rngF.Columns(1).Column - 1
    lRow = rngF.Columns(1).Row

    If Target.Count > 1 Then GoTo exitHandler

    If Target.Address = rngFS.Address Then
      If rngFS.Value = "On" Then
        rngFS.Value = "Off"
      Else
        rngFS.Value = "On"
      End If
    End If

    If UCase(rngFS.Value) = "ON" Then
      If Not Intersect(Target, rngF) Is Nothing Then
        If Target.Row > lRow Then
          rngF.AutoFilter Field:=Target.Column - lCol, _
              Criteria1:=Target.Value
        ElseIf Target.Row = lRow Then
          rngF.AutoFilter Field:=Target.Column - lCol
        End If
      End If
    End If

    exitHandler:
      Exit Sub

    End Sub

代码中当前的问题是什么?逻辑:
1
在代码中声明工作表对象(比如wsAF)。将实际要使用自动筛选的工作表分配给此工作表对象
2
工作表_SelectionChange
of list of products工作表中,只需使用wsAF.Rng.autofiler执行自动筛选当前的问题是我有工作表1,在A列中我有一个名称列表。在Sheet2中,我有C列包含相同的名称,所以我想做的是单击Sheet1列A上的一个单元格,并在Sheet2列C上过滤该值。感谢Siddharth,但我正在尝试,也无法做到,代码已经在文件中,我无法对代码进行此更改。你能帮忙吗?