VBA Autofilter Excel 2013?

让人想犯罪 __ 提交于 2020-01-06 19:52:44

问题


I've been using a line like:

Cells.AutoFilter 11, "0"

for a while to autofilter column 11 for "0".

I recently updated to Microsoft Office 2013 and now I'm getting an AutoFilter method of Range class failed runtime error with this line. Is this a compatibility issue with Office 2013 or some other problem?

EDIT: I should clarify that I am not getting an error with a program I already run, but rather a line which I've used before and is not working for me right now.

EDIT2:

Code:

Dim firstRow As Integer
Dim lastRow As Integer
Dim firstCol As Integer
Dim lastCol As Integer
Dim allRange As Range
Dim vRange As Range
Dim bRange As Range
Dim commentsCol As Integer
Dim commentsColRng As Range
Dim fieldNameCol As Integer
Dim userCol As Integer

If Cells(2, 1) <> "" Then

    firstCol = 1
    lastCol = Cells(1, Columns.Count).End(xlToLeft).Column
    firstRow = 2
    lastRow = Cells(Rows.Count, "A").End(xlUp).Row

    commentsCol = Rows(1).find("Comments").Column '11
    fieldNameCol = Rows(1).find("Field Name").Column '8
    userCol = Rows(1).find("User").Column '4

    Set allRange = Range(Cells(firstRow, firstCol), Cells(lastRow, lastCol))
    Set commentsColRng = Range(Cells(firstRow, commentsCol), Cells(lastRow, commentsCol))

    Cells.AutoFilter Field:=1, Criteria1:="PF"
    Cells.AutoFilter commentsCol, "0", xlFilterValues
    Cells.AutoFilter Field:=2, Criteria1:="0", Operator:=xlFilterValues

End If

I have three autofilters because I'm trying it multiple different ways.


回答1:


You might not have anything in column 11.

For example:

     A         B
---------------------
1  field1   field2
2  a             0 
3  b             1
4  c             2
5  d            23

Sub Test()
    ' this will succeed because column 2 (B) has something
    Cells.AutoFilter 2, "0"

    ' this will fail because column 3 (C) has nothing to filter on
    ' error message will be AutoFilter method of Range class failed
    Cells.AutoFilter 3, "0"
End Sub


来源:https://stackoverflow.com/questions/31730259/vba-autofilter-excel-2013

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!