Страницы: 1
RSS
Данные двух таблиц -->> в одну, VBA
 
Добрый вечер.
Подскажите пожалуйста, как собирать данные словарём из двух таблиц?

Спасибо.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Код
Sub arrtwo()
Dim a(), b(), c(), i&, ii&
Range("D2:D100").ClearContents
c = [b2].CurrentRegion.Value
a = [h2].CurrentRegion.Value
b = [l2].CurrentRegion.Value

With CreateObject("Scripting.Dictionary")
For i = 1 To UBound(a)
    .Item(a(i, 1)) = a(i, 2)
Next
For i = 1 To UBound(b)
    .Item(b(i, 1)) = b(i, 2)
Next
For i = 1 To UBound(c)
    If .exists(c(i, 1)) Then
          c(i, 1) = .Item(c(i, 1))
       Else
          c(i, 1) = Empty
    End If
Next
End With
[d2].Resize(UBound(c)) = c()

End Sub

---------
Я правда не совсем понял чего Вы добивались, но если ключи уникальные в обоих таблицах, то можно так
 
Цитата
B.Key написал:  чего Вы добивались
Странный вопрос, Вам ни разу не приходилось выбирать данные из 2-х таблиц? Спасибо за код, через пару часов посмотрю (дома нет Excel).
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
 
Доброе время суток
Цитата
Владимир написал: Вам ни разу не приходилось выбирать данные из 2-х таблиц?
Приходилось и не раз. Только мне тоже не понятно, где там таблицы и что, собственно, нужно выбирать? Потому и не пытался дать ответ, и, думаю, не одинок в этом. Тупой я однако.
 
B.Key, спасибо. Всё работает правильно.
Всего доброго.
"..Сладку ягоду рвали вместе, горьку ягоду я одна."
Страницы: 1
Наверх