2015-04-21 4 views
0

В Excel У меня есть именованный диапазон, содержащий массив, например, как приведенный ниже массив.Найти максимальное значение в каждой строке или столбце массива Excel

0 0 0 7 
0 0 6 5 
0 5 3 2 
4 3 2 1 

Я хотел бы найти максимальное значение в каждой строке (или столбце) массива. Для столбцов в массиве выше, я хочу, чтобы результат:

Array={4,5,6,7} 

Если это помогает, максимум всегда будет верхний номер для столбца и крайнего левого ряда на ряд.

Мне нужна формула рабочего листа, а не функция VBA.

+0

Вы случайно в виде формулы рабочего листа или функции VBA? Ваш вопрос подразумевает VBA, но теги подразумевают ws. – user3819867

+0

Предполагаю, что вы не хотите, чтобы формула рабочего листа буквально выводила «Array = {4,5,6,7}»? В чем смысл этого? – Steven

+0

@Steven Нет, я буквально не хочу «Array =» и т. Д. Я хочу массив, с которым я могу делать дальнейшие вычисления. Я хочу, чтобы этот новый массив включал только максимальные значения из каждой строки или столбца исходного массива. – Derek

ответ

0

Я нашел решение. Если мой первоначальный массив называется RNG то следующая формула массива можно использовать для возвращения массива, показывающий максимальное число в каждой колонке:

=MAX(INDEX(rng,0,COLUMN(A1:D1))) 

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

=MAX(INDEX(rng, ROW(A1:A4))) 
0

С указанным диапазоном Rng и значениями, опубликованными в исходном сообщении, попробуйте эту формулу.

=SUBTOTAL(4,OFFSET(INDEX(Rng,1,1),,COLUMN(Rng)-MIN(COLUMN(Rng)),ROWS(Rng))) 

Он возвращает массив макс каждого столбца {4,5,6,7}

Это возвращает макс каждой строки.

=SUBTOTAL(4,OFFSET(INDEX(Rng,1,1),ROW(Rng)-MIN(ROW(Rng)),,,COLUMNS(Rng))) 

и массив

Смежные вопросы