Я хочу вернуть наибольшее значение в наборе ячеек с представительным кодом. Картинка стоит тысячи слов, поэтому я добавил ее для вас ниже:

То, что вы видите на изображении (столбец T, где буква относится к одному из заголовков и показывает, какое наибольшее значение из трех предыдущих столбцов), было сделано вручную. Я не хочу делать это до конца, потому что это займет очень много времени.

Какова самая простая и легкая формула для достижения этой цели для тех, кто использует Excel 2007? (Если бы вы могли добавить немного объяснения с вашей формулой, это было бы еще лучше, но не обязательно.)

2 ответа2

2

Ответ bvaughn хорош, понятен и прост, особенно если у вас всего несколько столбцов. Это также интуитивно масштабируемо, если вы добавите больше столбцов. Однако если у вас много столбцов, такой подход может стать громоздким.

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

=CHOOSE(MATCH(MAX(Q2:S2),Q2:S2,0),"N","B","T")

Пояснения, работающие изнутри:

  • MAX(Q2:S2) определяет максимальное значение в диапазоне.

  • MATCH(MAX(Q2:S2),Q2:S2,0) находит это значение в диапазоне, давая вам номер позиции.

  • CHOOSE(position,"N","B","T") выбирает из списка выходных значений, используя ту же относительную позицию.

Этот тип формулы может обрабатывать большое количество столбцов, просто добавляя выходные данные в список (и, конечно, корректируя диапазон). Рабочая лошадка не изменяется при росте столбцов. Формула остается компактной, потому что при добавлении столбцов растет только список выходных значений.

Альтернативное решение

Функция CHOOSE необходима только потому, что вы используете метки, отличные от заголовков столбцов. Если вы используете заголовки столбцов (в данном случае "Новости", "Книги", "Твиты"), вы можете использовать общую формулу, которая просто ссылается на диапазоны:

=INDEX(Q$1:S$1,1,MATCH(MAX(Q2:S2),Q2:S2,0))

Расположение позиции наибольшего числа такое же, как и раньше, но оно используется для выбора из заголовков в первом ряду с помощью INDEX. Эта формула останется неизменной для любого количества столбцов, просто указав диапазон.

2

Так как вы не указали, что происходит при связывании, я предполагаю, что результатом будет NBT, если по всем трем столбцам есть сопоставление.

  1. Найдите максимальное значение:

    Используйте эту формулу:

    =MAX(Q2:S2)
    

    Это дает максимальное значение. (Предполагается, что это для использования в T2)

    Используйте менеджер имен, чтобы дать этой формуле имя MaxV или просто используйте саму формулу.

  2. Первый ЕСЛИ:

    =IF(Q2=MaxV,"N","")
    

    Этот IF () печатает N или ничего

  3. Составьте формулу для других столбцов и объедините в одно уравнение:

    =IF(Q2=MaxV,"N","") & IF(R2=MaxV,"B","") & IF(S2=MaxV,"T","")
    

Если вы не хотите использовать менеджер имен, тогда полная формула:

=IF(Q2=MAX(Q2:S2),"N","") & IF(R2=MAX(Q2:S2),"B","") & IF(S2=MAX(Q2:S2),"T","")

Символ & используется для объединения двух букв, аналогично тому, как + используется для добавления двух чисел.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .