Макрос с автофильтрами не переносится на другой лист
Добавлено: 10 июн 2009, 10:12
Доброе утро всем ! Решил обратиться к вам, за помощью. Вот есть такой код:
Данный макрос работает безупречно, тоесть делает всё что нужно, и не когда не жаловался на ошибки. Но дело в том, что мне нужно такое же действие проделывать с несколькими страницами. При вставке данного кода, на новый лист. меняю название листов в макросе. И он начинает ругаться в этом районе:
Selection.AutoFilter
Selection.AutoFilter Field:=17, Criteria1:="ZKE0"
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
не понимаю в чем дело? вроде бы всё правильно написано

--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Разобрался в чем дело, но мне не нравиться как я описал автофильтр. Потому что при сортировке автофильтром, как удалить макросом, найденные данные. Я по автофильтру , отсортировал данные ZKEO, как удалить все строки, содержащие в 13 ячейке "ZKE0" ??

Код: Выделить всё
Sub macros()
Dim i As Long
c = "ZKE0"
i = 2
R02 = "R02"
R07 = "R07"
R06 = "R06"
S43 = "S43"
kol_cheh = 0
kol_altuf = 0
kol_tag = 0
proverka = "Display Variant"
Application.DisplayAlerts = False
With Application
.Calculation = xlAutomatic
.MaxChange = 0.001
End With
ActiveWorkbook.PrecisionAsDisplayed = False
Calculate
Sheets("Alt_0406").Select
If Sheets("Alt_0406").Cells(4, 1).Value = proverka Then
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(1).Delete
Sheets("Alt_0406").Rows(2).Delete
Sheets("Alt_0406").Columns(1).Delete
Sheets("Alt_0406").Columns(1).Delete
Sheets("Alt_0406").Columns(3).Delete
End If
Rows("1:1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=17, Criteria1:="ZKE0"
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Delete Shift:=xlUp
ActiveSheet.ShowAllData
Selection.AutoFilter Field:=16, Criteria1:="<>"
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Delete Shift:=xlUp
ActiveSheet.ShowAllData
Columns("M:M").Select
Selection.Replace What:="R07", Replacement:="R06", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Selection.AutoFilter
Selection.AutoFilter Field:=17, Criteria1:="ZKE0"
Rows("2:2").Select
Range(Selection, Selection.End(xlDown)).Select
не понимаю в чем дело? вроде бы всё правильно написано



--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
Разобрался в чем дело, но мне не нравиться как я описал автофильтр. Потому что при сортировке автофильтром, как удалить макросом, найденные данные. Я по автофильтру , отсортировал данные ZKEO, как удалить все строки, содержащие в 13 ячейке "ZKE0" ??

