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

- Шаг 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