Операторы IF превосходно помогают ссылаться на несколько ячеек

Я немного борюсь со своимIFзаявление, и мне было интересно, могу ли я получить некоторую помощь. Я создал новый столбец и хочу, чтобы он был заполнен на основе трех других ячеек. Например, вы можете увидеть вложение ниже. Я хочу, чтобы в новом столбце говорилось, например:F2надо просто вернуть Мале,F3должен вернуть Мужчина 18+.F4должен вернуть мужчину 18+ с высшим образованием, иF5должен вернуть диплом колледжа 18+.

Образец данных

3 ответа

Если вы действительно хотите придерживаться обычной функции, вы можете просто комбинировать различные условия. В частности, вместоvalue_if_false, вставьте следующийIFзаявление. Оба подхода предполагают, что ваши данные находятся в диапазонеA1:C5и вы вставляете формулу в ячейкуD2и скопируйте его. Значения разделены знаком «;», но вы можете просто удалить это, если оно вам не нужно.

ЕСЛИ Функция:

      =IF(AND(A2:C2)=TRUE,"Male; 18+; College Degree",
IF(AND(A2,B2)=TRUE,"Male; 18+",
IF(AND(A2,C2)=TRUE,"Male; College Degree",
IF(AND(B2,C2)=TRUE,"18+; College Degree",
IF(A2=TRUE,"Male",IF(B2=TRUE,"18+",IF(C2=TRUE,"College Degree","ERROR")))))))

Поскольку эта процедура довольно утомительна, особенно если у вас несколько условий, другой подход — просто использоватьFILTERфункция для случаев, которые являются ИСТИНОЙ, а затем соответствующим образом объединяйте их.

      =TEXTJOIN("; ",TRUE,FILTER($A$1:$C$1,A2:C2=TRUE))

Попробуйте эту формулу:

      =CONCAT(FILTER($A$1:$C$1,A2:C2=TRUE)&" ","")

Если у вас нет достаточно последней версии Excel для использования динамических массивов, просто объединенная серия IF справится с этой задачей, но не подойдет для масштабирования на множество столбцов.

Вам нужно будет добавить пробелы, а затем использовать TRIM, чтобы избавиться от любых «неиспользуемых» пробелов на концах или двойного посередине (для «Male__College Degree»):

      =TRIM(IF($A2,$A$1,"") &" "& IF($B2,$B$1,"") &" "& IF($C2,$C$1,""))

Это основано на том факте, что $A2 = TRUE — то же самое, что и $A2. Поскольку $A2 уже является истинным или ложным, вам не нужно проверять, ИСТИНА = ИСТИНА (например, 1=1).

Если на самом деле у вас еще нет True и False, но есть что-то еще, например Yes/No, вам нужно расширить каждое IF как более формальное условие:

      =...IF($A2="Yes",$A$1,"")...
Другие вопросы по тегам