Добрый день, может подскажите еще одни вопрос. Есть массив на 500 000 строк. Его нужно отВПРить. Формулами это делать, так сказать, не очень весело. Если есть ссылка или может тема такая была, или макрос. Буду благодарен за подсказку или помощь. файл прикладывать смысла не вижу
Sub tt()
Dim a, i&
a = [a1].CurrentRegion.Value
With CreateObject("scripting.dictionary"): .comparemode = 1
For i = 1 To UBound(a): .Item(a(i, 1)) = a(i, 2): Next
a = [i1].CurrentRegion.Columns(1).Resize(, 2).Value
For i = 1 To UBound(a): a(i, 2) = .Item(a(i, 1)): Next
End With
[i1].Resize(UBound(a), 2).Value = a
End Sub
Sub Poisk()
Dim i As Long
Dim iLastRow As Long
Dim FoundFruit As Range
iLastRow = Cells(Rows.Count, "A").End(xlUp).Row
For i = 1 To iLastRow
Set FoundFruit = Columns("I").Find(Cells(i, "A"), , xlValues, xlWhole)
If Not FoundFruit Is Nothing Then
Cells(FoundFruit.Row, "J") = Cells(i, "B")
End If
Next
End Sub
Find будет дольше. По моему способу - учтите, что currentregion берёт только сплошную область, т.е. пропусков данных быть не должно! Ну или определяйте диапазон как делает Кузмич (мне лениво... писать больше ).