VBA - 输入数据后在Excel中自动更新过滤器

时间:2016-11-14 19:22:28

标签: vba excel-vba excel

我对VBA很新,并且一直试图让我的电子表格做的不仅仅是数据透视表允许。我已经能够使用VBA在excel中设置一些自动过滤器,但是现在我想在将数据输入单元格后让工作表自动过滤。但是,按下回车后,下面的两行都不起作用。

以下是我尝试过的两行代码:

1

Private Sub Worksheet_Change(ByVal Target As Range) 
    If Target.Address = "$M$5" Then 
        Application.EnableEvents = False 
        FilterTo1Critera 
        Application.EnableEvents = True 
    End If 
End Sub 

2

Private Sub Worksheet_Change(ByVal Target As Range)
Dim ws As Worksheet
Dim cel As Range

Set ws = ThisWorkbook.Sheets("Sheet3")

If Not Intersect(Target, Range("A3")) Is Nothing Then
    For Each cel In Target
        Range("A3").Value = "Changed"
        Application.EnableEvents = False
        If IsEmpty(ws.Range("A")) Then Sheet1.Range("A").Value = 0
        Application.EnableEvents = True
    Next cel
End If

End Sub

采取什么样的正确方法?还有,我可以采取一些好的课程来了解其中的一些概念吗?

提前致谢!

0 个答案:

没有答案