#excel #excel-formula
#excel #excel-формула
Вопрос:
Есть ли способ записать это с помощью формул.
=Max(a, a b, a b c, a b c d, a b c d e ...)
Я не хочу использовать VBA для этой задачи, и я не уверен, как подойти к этой проблеме.
Лист Excel, расширенный формулой
Сокращенный лист Excel без формулы
Цели:
1) Для каждого из людей (Билл, Бен, Кэти) я хотел бы сравнить максимальную сумму только X во времени.
Например, в столбце J я хотел бы знать текущее максимальное значение суммы X. Текущей является дата 17/19, потому что это самая последняя запись.
2) Для каждого из пользователей (Билл, Бен, Кэти) я хотел бы сравнить максимальное значение предыдущей записи с максимальным значением моей самой последней записи.
Например, в столбце K я хотел бы сравнить максимальное значение суммы X в 1/5/16 с максимальным значением суммы X в 17/11/16.
3) Я хотел бы, чтобы столбцы J и K пересчитывались по мере ввода новых данных в столбец I. На данный момент, используя решение, упомянутое ниже, в столбце J, я думаю, я бы использовал что-то вроде этой формулы:
=MAX(MMULT(0 (ROW(B9:I9)>=TRANSPOSE(ROW(B9:I9))),B9:I9)
Это решение, похоже, работает, если у меня есть только X, идущие вниз по вертикали.
Кроме того, по мере ввода новых данных столбцы J и K будут сдвигаться вправо, превращаясь в столбцы K и L.
4) Выделенная область в столбцах I и J — это мои выходные разделы, которые зависят от даты ячейки B1.
Например, если бы я изменил дату на 1/1/2016 в ячейке B1, ячейка I7 была бы равна -4, ячейка J7 была бы равна True.
Если бы я изменил дату на 17/16/16 в ячейке B1, ячейка I7 была бы равна 5, а ячейка J7 была бы равна True.
Я немного поиграл с этим, пытаясь использовать SUMIFS для определения суммы X на основе критерия даты.
Я заранее благодарю всех за вашу помощь и приношу извинения, если моя формулировка этой проблемы неясна. Я студент бакалавриата и вообще не разбираюсь в компьютерах / программировании / чем-либо подобном. Большое вам спасибо!
Комментарии:
1. Откуда должны взяться переменные
a
,b
,c
, …? Также: должно ли все это быть только в одной формуле? Тогда это будет практически невозможно. Но с использованием вспомогательных ячеек это, безусловно, возможно.2. Боюсь, я не могу понять, поскольку вы не добавили ожидаемые результаты в столбцы I и J вашего листа для приведенных данных.
3. Я разрабатываю ожидаемые результаты прямо сейчас. Мне просто трудно это делать… Как бы мне воспользоваться предоставленной вами формулой, но вычислить ее для набора данных, который идет по горизонтали, а не по вертикали?
4. О, хорошо, я немного изменил вашу исходную формулу на =MAX (MMULT(B7: G7,0 (СТОЛБЕЦ(B7: G7)>=TRANSPOSE(СТОЛБЕЦ (B7: G7))))) чтобы ответить на мой вопрос. Есть ли какой-либо способ применить эту формулу, чтобы получить максимальное количество значений, которые являются только X в строке критериев, возможно, с использованием SUMIFS?
5. Итак, после еще большей настройки и экспериментов я получил =MAX(MMULT((B7: H7)*(B5: H5=»X») *(B4: H4<=B1), 0 (СТОЛБЕЦ (B7: H7)>=TRANSPOSE (СТОЛБЕЦ (B7: H7))))))
Ответ №1:
Предполагая, что a
, b
c
и т.д. Находятся в столбце, тогда стандартным подходом будет использование дополнительного столбца с совокупной суммой значений во входном столбце. Тогда вы можете просто взять MAX
из столбца с накопительной суммой.
Например. использование совокупной суммы в столбце B с входными значениями в столбце A:
С MAX
формулой в столбце C:
Комментарии:
1. Привет, спасибо за ваш вклад. Я сделал что-то вроде того, как вы опубликовали выше, и это определенно соответствует тому, что я ищу. Я расширил свой первоначальный пост выше.
Ответ №2:
Предполагая, что данные в A1:A5
, вы можете использовать это array formula**
:
=MAX(MMULT(0 (ROW(A1:A5)>=TRANSPOSE(ROW(A1:A5))),A1:A5))
который из-за своей энергонезависимости предпочтительнее:
=MAX(SUBTOTAL(9,OFFSET(A1:A5,,,ROW(A1:A5)-MIN(ROW(A1:A5)) 1)))
С уважением
** Формулы массива вводятся не так, как «стандартные» формулы. Вместо того, чтобы нажимать просто ENTER, вы сначала удерживаете нажатой клавиши CTRL и SHIFT и только затем нажимаете ENTER. Если вы все сделали правильно, вы заметите, что Excel заключает формулу в фигурные скобки {} (хотя не пытайтесь вставлять их вручную самостоятельно).
Комментарии:
1. Кажется, это работает. Это одна часть большего вопроса, но я не знаю, как сформулировать вопрос, поэтому я задаю его по частям.
2. Извините, я новичок на этом сайте, поэтому я все еще учусь пользоваться этим сайтом. Я добавлю следующую часть вопроса, отредактировав свой исходный пост.
3. Привет, я опубликовал свой обновленный вопрос выше. Мне нравится ваше решение, и оно определенно отвечает моему первоначальному сообщению. Большое вам спасибо за ваш вклад. Я расширил свой первоначальный вопрос выше.
4. Я думаю, что если у вас есть рабочие решения по концептуальной проблеме, вы должны принять ответ (поставить ему галочку и т.д.) И задать новый вопрос, когда у вас возникнет новая проблема. У вас есть формула массива, которая решает проблему вычисления. Если есть другие проблемы с таблицами, задайте другой вопрос, ИМХО.
5. Вы рекомендуете мне опубликовать мой отредактированный пост в виде нового вопроса? Я также оценил решения в лучшую сторону, но я не думаю, что это заметно, потому что я новый пользователь…