У меня есть набор данных для сотрудников, который содержит имя и 3 атрибута (функция работы, класс работы и местоположение). Затем у меня есть набор данных для открытых позиций, который содержит номер заявки и 3 атрибута (функция вакансии, класс работы и место работы). Для каждого сотрудника я хотел бы, чтобы три атрибута, связанных с ним, сравнивались с теми же тремя атрибутами открытых вакансий, и чтобы соответствующие номера заявок отображались для каждого сотрудника, где есть совпадение.
3 ответа
Я думаю, что вы находитесь на правильной линии с объединением трех атрибутов. Затем их можно повернуть, как показано ниже:
Чтобы помочь с разборчивостью, по крайней мере для начала, я добавил «Работа» и «Вакансия». Для набора AAA работает один человек (# 401), а заявки не существует (вакансия не указана). Для Set ABC есть реквизиция (требование № 3a) и один человек, уже работавший с этим набором навыков (# 123).
Электронная таблица с примерами доступна как http://www.bumpclub.ee/~jyri_r/Excel/Employees_and_vacancies_matched.xls
Тестовый макет:
Столбцы A:E - Имя сотрудника (A), функция работы (B), класс работы (C), местоположение (D)
Столбец E: - Столбцы B:E сцеплены
Столбцы I: L - номер заявки (I), функция работы (J), класс работы (K), местоположение (L)
Столбец М: - Столбцы J: L сцеплены
Столбец F содержит формулу массива (Shift-Ctrl-Enter из окна формулы для вставки, скрученные скобки вставляются Excel, а не пользователем):
={SMALL((IF($M$2:$M$100=$E2,OFFSET($M$2:$M$100,0,-4),"*")),1)}
Формула ищет совпадения данных о сотрудниках по открытым позициям (IF($M$2:$M$100=$E2
) и в случае положительного нахождения возвращает соответствующий номер заявки (OFFSET($M$2:$M$100,0,-4
), иначе возвращает "*"
. Результаты будут сохранены в массиве, и нет прямого способа показать их. Поэтому в текущем столбце будет показан наименьший номер заявки (SMALL(array;1)
).
Второе совпадение будет отображаться в следующем столбце. После копирования формулы следует заменить ),1)}
на ),2)}
и т.д.
Если такое решение работает для вас, можно разработать формулу, предупреждая пользователя, если столбцов слишком мало для отображения всех подходящих результатов.
=IF(SUMPRODUCT((B2=F2)*(C2=G2)*(D2=H2))=1,A2)