Данные фильтра соответствия индекса только с использованием vba - PullRequest
0 голосов
/ 18 июня 2020

Я пытаюсь использовать индексное соответствие только с отфильтрованным значением, мое условие фильтрации: если значение ячейки столбца «AE» = «ИСТИНА», тогда значение из столбца «Z» должно копироваться для копирования «S» и должно совпадать с тем, что я иметь в столбце M.

enter image description here

enter image description here

Sub OTC_filter()

Dim ot As Worksheet
Dim lr As Long
Dim elr As Long

Application.ScreenUpdating = False

Set ot = Worksheets("OTCDD")

Sheets("OTCDD").Select
'ot.Range("O3:T3", Range("O3").End(xlDown)).clear

lr = ot.Cells(Rows.count, 26).End(xlUp).Row

If ot.FilterMode Then ot.ShowAllData

With ot.Rows(1)

 Range("AE2").AutoFilter Field:=6, Criteria1:="TRUE"

ot.Range("Z1:Z" & lr).SpecialCells(xlCellTypeVisible).Copy Destination:=ot.Range("S1")



        .AutoFilter Field:=6

  End With

Application.ScreenUpdating = True

End Sub

1 Ответ

0 голосов
/ 18 июня 2020

Попробуйте это

Option Explicit

Sub OTC_filter()
Dim ot As Worksheet, lr As Long, elr As Long, i As Long

Application.ScreenUpdating = False
Set ot = Worksheets("OTCDD")
lr = ot.Cells(Rows.Count, 26).End(xlUp).Row

For i = 2 To lr
If WorksheetFunction.And(WorksheetFunction.IfError(Cells(i, "AE"), False) = True, (Cells(i, "Z") = Cells(i, "M"))) = True Then
    Cells(i, "S") = Cells(i, "Z")
End If
Next

Application.ScreenUpdating = True
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...