Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Связать две таблицы по двум полям. / 10 сообщений из 10, страница 1 из 1
07.06.2013, 14:36
    #38290322
son6ka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
Есть таблица А
код, статья

и таблица Б
код, статья, сумма

нужно подлить в дополнительный столбец таблицы А сумму из таблицы Б с соответствием и кода, и статьи.

Если бы соответствие было по одному полю, например, по коду, то я обычно делала вот так
Код: vbnet
1.
=ДВССЫЛ(СЦЕПИТЬ("Лист1!с";ПОИСКПОЗ(A14;Лист1!$A$1:$A$33337;0)))


на Листе1 таблица Б, а А14 ячейка таблицы А, в которую подливается искомое значение.

Как поступить в случае с двумя полями для связи?
Спасибо.
...
Рейтинг: 0 / 0
07.06.2013, 14:37
    #38290328
son6ka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
Вернее, А14 - ячейка с кодом, соответствие которому ищется в таблице Б.
...
Рейтинг: 0 / 0
07.06.2013, 15:59
    #38290553
Serge 007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
son6kaЕсть таблица А и таблица БПредлагаете нам телепатически узнать об их содержании?
...
Рейтинг: 0 / 0
07.06.2013, 16:35
    #38290660
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
son6ka, чем объяснять словами, приложите пример файла и то, что вы хотите получить
...
Рейтинг: 0 / 0
07.06.2013, 16:41
    #38290681
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
son6ka, как-то так:

Код: vbnet
1.
=ИНДЕКС(Лист1!$C$1:$C$33337;СУММПРОИЗВ(((Лист1$A$1:$A$33337=a1)*(Лист1!$B$1:$B$33337=b1)*СТРОКА($1:$33337))))
...
Рейтинг: 0 / 0
07.06.2013, 16:54
    #38290711
son6ka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
...
Рейтинг: 0 / 0
07.06.2013, 17:09
    #38290753
Serge 007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
Хороший пример :)
Ни одного совпадения

Код: vbnet
1.
=СУММПРОИЗВ((A2=Лист2!A$2:A$7)*(Лист2!B$2:B$7=B2)*Лист2!C$2:C$7)
...
Рейтинг: 0 / 0
07.06.2013, 17:11
    #38290758
son6ka
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
Сумма - не в математическом смысле, а в смысле, так столбец называется.
...
Рейтинг: 0 / 0
07.06.2013, 17:25
    #38290801
Serge 007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
son6ka, файл прикладывают для того что бы быстрее (или вообще) получить решение. Вы своим файлом только замедляете этот процесс. Файл-пример должен содержать данные аналогичные реальным и сохранять их расположение

У Вас в столбце Сумма не числовые значения что-ли?
Для числовых моя формула подойдёт
...
Рейтинг: 0 / 0
07.06.2013, 17:29
    #38290807
Serge 007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Связать две таблицы по двум полям.
Для текста формула массива:
Код: vbnet
1.
=ИНДЕКС(Лист2!C$2:C$7;ПОИСКПОЗ(A2&B2;Лист2!A$2:A$7&Лист2!B$2:B$7;))
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Связать две таблицы по двум полям. / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]