Оператор IF для возврата определенных значений в определенном порядке

Я пытаюсь запустить оператор IF, чтобы вернуть определенные значения в определенном порядке. У меня есть три столбца: - Partner_Number_Col, Email_Col, Contact_Col. Один номер партнера может содержать (сопоставляться) несколько разных контактов/адресов электронной почты. В Contact_Col есть несколько различных вариантов контакта:

  1. Finance_Contact
  2. Main_Contact
  3. Blank_Contact (Конкретные адреса электронной почты в разделе Email_Col соответствуют каждому из этих параметров)

Я хочу найти номер партнера (от Partner_Number_Col), а затем вернуть электронное письмо (от Email_Col), соответствующее (Contact_Col), в следующем порядке:

  1. Finance_Contact (Если этого не существует, то...
  2. Main_Contact (Если это не так, то...
  3. Blank_Contact

Т.е. Если Finance_Contact доступно под Contact_Col, то я хочу, чтобы сначала возвращалось это, Main_Contact, а затем пустое...

Редактировать, чтобы вставить изображение из ссылки в комментарий:

Пример вопроса SO18339915


person user2682287    schedule 20.08.2013    source источник
comment
Можете ли вы привести пример данных, которые у вас есть, и пример результата, чтобы я мог предоставить вам полное заявление для выполнения работы?   -  person MaveRick    schedule 20.08.2013
comment
Имея небольшие проблемы с визуализацией, возможно, вы сможете опубликовать некоторую фиктивную информацию, которая проиллюстрирует вашу проблему.   -  person StickMaNX    schedule 20.08.2013
comment
Я не могу добавить файл excel? Есть ли способ увидеть это? PartnerNo_Col Email_Col Contact_Col P03566453 [email protected] Финансы P03566453 [email protected] Основное деловое контактное лицо P03566453 [email protected] (пусто)   -  person user2682287    schedule 20.08.2013
comment
Извините, вид, который выглядел, когда я его редактировал. Подскажите, есть ли возможность загрузить таблицу Excel?   -  person user2682287    schedule 20.08.2013
comment
Вот ссылка на некоторые примеры данных. sites.google.com/site/excelissues/email-issue Спасибо.   -  person user2682287    schedule 21.08.2013
comment
Если бы вы могли помочь мне с данными, которые я прикрепил к ссылке, это было бы большим подспорьем!   -  person user2682287    schedule 21.08.2013


Ответы (2)


Если сортировка неудобна, я бы предложил сводную таблицу:

пример SO18339915

и просто (выбрав соответствующий Partner_Number в PT):

=IF(A1=B3,B6)

(с довольно надуманным использованием =IF для соблюдения заявленного требования!)

Это отобразит несколько электронных адресов для одной и той же комбинации Partner_Number и Contact, если они есть.

Пересмотрено, чтобы включить изображение в соответствии с исправленным образцом данных:

SO18339915 второй пример

Если исходные данные уже находятся в кэше PT, нет необходимости создавать новый PT (на самом деле лучше этого не делать — при необходимости просто скопировать), но это может усложнить «заполнение пробелов», поскольку требуется, чтобы каждая строка имела Partner Number . В ячейках пробелы можно быстро заполнить, выбрав столбец Главная > Редактирование - Найти и выбрать, Перейти к специальному..., выбрать Пробелы (только) и =, Вверх, Ctrl< /kbd>+Ввод.

person pnuts    schedule 20.08.2013

Если вы можете отсортировать свои данные, просто отсортируйте их по Contact_Col, чтобы все Finance_Contact оказались сверху, Main_Contact — чуть ниже, а пустые — внизу (если параметр на самом деле пуст, вы можете получить столбец рядом с Contact_Col, где вы поставьте 1 для Finance_Contact, 2 для Blank_Contact и 3 для Blank_Contact и отсортируйте по этому столбцу; по возрастанию)

Затем просто выполните VLOOKUP для этого:

=VLOOKUP("P03566453", A:B, 2, 0)

Поскольку мы отсортировали данные, Finance_Contact оказывается вверху, а если их нет, следующим будет Main_Contact, и то же самое для Blank_Contact.

Он будет отображать #N/A, если номер партнера не может быть найден в списке.

Например, если вы ввели номер партнера в ячейку E5, вы можете легко сделать:

=VLOOKUP(E5, A:B, 2, 0)
person Jerry    schedule 20.08.2013