从excel中的筛选器列表更改值

时间:2014-10-08 06:05:18

标签: excel-vba filter vba excel

我有两张纸。 sheet1是仪表板,sheet2是原始数据。 从sheet1我使用自动过滤方面的一些输入。 是否可以更改过滤值(来自sheet1)。它也应该影响sheet2。

1 个答案:

答案 0 :(得分:0)

根据要求提供一些示例代码:

   Private Sub Worksheet_Change(ByVal Target As Range)
    'check for first row - in example first row is filter row
    'check for first column - column 1 could be your id column
    Dim rawRange As Range
    If Target.Row > 1 And Target.Column > 1 Then
        'Search for the ID in your rawData sheet - in this case Tabelle2 Column A
        Set rawRange = ThisWorkbook.Worksheets("Tabelle2").Range("A:A").Find(What:=ActiveSheet.Cells(Target.Row, 1).Value)
        If Not rawRange Is Nothing Then
            'here you can work with offset to find the correct column - of course the columns have to be the same in sheet 1 and 2
            rawRange.Offset(0, Target.Column - 1).Value = Target.Value
        End If
    End If
End Sub

请记住它只是一个示例,但它基本上可以工作,如果您创建一个新的工作簿并调整工作表名称。必须将工作表更改事件代码粘贴到第一个工作表中。

如果您有任何其他问题,请询问

编辑:

链接到ExampleFile