Соответствие значения в A значению в B для возврата значения из C, где A имеет дубликаты (Libreoffice calc/gnumeric)
У меня есть данные как:
A B C
1 1 hi
2 2 hello
3 3 howdy
3 4 hi
4 5 hi there
5 6 hello there
5 7 howdy
6 8 hi
A и B содержат одинаковые значения, однако A имеет несколько дубликатов, которые необходимо сохранить. B не содержит дубликатов или любых других значений, не входящих в A.
Я хочу сделать что-то вроде:
"Что такое С для А"
Итак, мои данные будут выглядеть так:
A C
1 hi
2 hello
3 howdy
3 howdy
5 hi there
5 hi there
6 hello there
Если бы в A не было дубликатов, это было бы просто, я мог бы просто отсортировать A и B по алфавиту и удалить B. Однако из-за дубликатов в A значения в A периодически сдвигаются на дополнительную строку по сравнению с B и C, поэтому данные больше не выстраивается Около 50% значения в А являются дубликатами.
Я старался
=if(B$2:B$6=A2,C2,error)
Он отлично работал для первых нескольких значений, где в A нет дубликатов (поэтому A - B - C выровнены), но затем после первого дубликата он просто возвращает ошибку.
1 ответ
Это именно то, что делает VLOOKUP.
ABCD 1 1 привет привет 2 2 привет привет 3 3 привет привет 3 4 привет привет 4 5 привет там привет 5 6 привет там привет там 5 7 привет привет 6 6 привет привет 10 9 приветствий #N/A
Установите формулу для D2
в =VLOOKUP(A2,B$2:C$10,2,FALSE())
а затем заполните до D10
,
Примечание: я добавил десятую строку, чтобы показать, что ошибка возникает, когда A нет в B.