在VBA中过滤Excel表

时间:2016-03-11 12:26:58

标签: excel vba excel-vba

我有一个链接到数据验证列表的Excel表。我已经过滤表以删除空格。如果我从数据验证列表中选择一个不同的项目,它会刷新数据,但会删除大部分数据,直到我刷新过滤器。我正在尝试提出一个宏,我可以添加到我当前的代码来刷新过滤器。过滤器是年,所以2013,2014,2015,2016和(空白)。这是我到目前为止所得到的,但它只是过滤掉所有内容

Sub sbFilterTable()

ActiveWorkbook.Sheets("Sheet4").ListObjects("Table2").Range.AutoFilter field:=1, _
Criteria1:="*013", Criteria2:="*014", Criteria3:="*015", Criteria4:="*016"

End Sub

注意:第一列中的日期是DD / MM / YYYY格式,因此我使用了通配符,因为它选择了完整格式,即使在过滤器选项中它只是说明年。任何指导或建议表示赞赏!

1 个答案:

答案 0 :(得分:1)

为什么不简单

ActiveWorkbook.Sheets("Sheet4").ListObjects("Table2").Range.AutoFilter _
    Field:=1, Criteria1:=">=1/1/2014", Operator:=xlAnd, Criteria2:="<=12/31/2016"