microsoft excel

Как сопоставить значения в столбце A со значениями в столбцах B,C или D и вернуть имя столбца,в котором было найдено соответствие

У меня есть таблица,которая выглядит примерно так (но тысячи строк):

A B C D
a1 a3 a1 a4
a2 a2 a5
a3
a4
a5

Идея заключается в том,чтобы в итоге добавить еще один столбец,E,который скажет мне,в какой "категории" (B,C и D-различные категории)находится каждый элемент A.

В моем представлении,я хочу,чтобы он искал в B:D все значения A,а затем,когда он найдет совпадение,возвращал имя столбца,в котором было найдено совпадение.

К сожалению,я не привык использовать Excel (обычно я использую R)и немного не в своей тарелке.Любая помощь будет очень признательна!

Желаемый результат будет выглядеть примерно так:

A B C D E
a1 a3 a1 a4 "C"
a2 a2 a5 "C"
a3 "B"
a4 "D"
a5 "D"

Попробуйте следующее решение.

См.приведенный ниже снимок экрана.

В E1 формула такова.

=SUBSTITUTE(ADDRESS(1,MAX(IF($B$1:$D$5=A1,COLUMN($B$1:$D$5),0)),4),1,"")

Обратите внимание,что после написания этой формулы вы должны преобразовать ее в формулу массива,нажав кнопкуCTRL+SHIFT+ENTERиз панели формул.Формула будет автоматически заключена в фигурные скобки,чтобы указать,что это формула массива.

Без этого шага он не будет работать правильно.

Перетащите его вниз до намеченных рядов.

Вы также можете использовать IFERROR для устранения любой ошибки #VALUE или #N/A и заменить его пустым,если значение не найдено,если это вообще возможно.

В зависимости от символа-разделителя списка,который в некоторых регионах может быть;вместо,в формуле может потребоваться заменить запятую на точку с запятой,на всякий случай.

В случае,если вы хотите использовать двойные кавычки вокруг буквы столбца.

=""""&SUBSTITUTE(ADDRESS(1,MAX(IF($B$1:$D$5=A1,COLUMN($B$1:$D$5),0)),4),1,"")&""""



Если у вас есть возможность более чем одного появления,попробуйте что-нибудь вроде:

=TEXTJOIN(",",,SUBSTITUTE(IFERROR(SORT(ADDRESS(1,($A2=B2:D6)*COLUMN(B2:D6),4)),""),"1",""))

который также сортирует столбцы.

Если у вас есть что-то отличное от буквенных меток, которые соответствуют меткам столбцов Excel, следующее соберет их все. SORT можно использовать либо для сортировки по порядку столбцов, либо для упорядочивания фактических результатов заголовка в алфавитном порядке:

=TEXTJOIN(",",,IFERROR(SWITCH(SUBSTITUTE(IFERROR(SORT(ADDRESS(1,($A2=B2:D6)*COLUMN(B2:D6),4)),""),"1",""),"B",B1,"C",C1,"D",D1),""))