Используйте более одного значения для извлечения нескольких совпадений из другого диапазона - PullRequest
0 голосов
/ 14 января 2019

У меня есть список данных (один столбец со значениями), который я хотел бы установить в качестве значения для извлечения данных из другого диапазона. Я знаю, что Value может обрабатывать только одну ячейку, есть ли обходной путь?

enter image description here

  • Шаг 1, Установите диапазон значений в столбце G
  • Шаг 2, Найти соответствующий результат в столбце A
  • Шаг 3, вставьте его в столбец G в L (иногда для каждого соответствующего результата будет более одной строки данных, поэтому значение X на шаге 1 может появляться более одного раза на шаге 2.)

Sub finddata() 
    Dim place As Long
    Dim FinalRow As Long
    Dim i As Integer

    Set place = Sheets(1).Range("h2:H10").Value

    FinalRow = Sheets(1).Range("A10000").End(xlUp).Row

    For i = 2 To FinalRow
        If Sheets(1).Cells(i, 1) = place Then
            Sheets(1).Range(Cells(i, 1), Cells(i, 5)).Copy
            Sheets(1).Range("H100").End(xlUp).Offset(1, 0).PasteSpecial       xlPasteFormulasAndNumberFormats
       End If
    Next i
End Sub

Хорошо, это то, как далеко я сейчас достиг, используя автофильтр. Проблема сейчас в том, что он фильтрует только первую строку из списка выборок. Другими словами, значение из «G2»

 Sub hamta()




 Dim ary As Variant

 With Worksheets(1).Cells(1, 1).CurrentRegion
 'with true numbers in column A this DOES NOT work
   ary = Range("g2:g5").Value
   AutoFilter field:=1, Criteria1:=ary, Operator:=xlFilterValues
  'with true numbers in column A this DOES work

 End With

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