Как я могу найти дату, которая соответствует указанной сумме?

1

Допустим, у меня есть две строки данных:

Date    1/5/2017    1/15/2017   1/20/2017   2/15/2017   2/25/2017   3/5/2017
Received    5           10          5           5           10         10

Как я могу создать формулу, которая говорит мне, на какую дату сумма полученных равна 20? Это будет 20.01.2017 в этом примере.

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

ОТВЕТЫ

Приведенные ниже 2 предложения обеспечивают решение вопроса, который я предложил. Вопрос был очень общим, без моей специфики, и ответы не совсем относились к тому, что мне нужно было сделать функцию. Будет задан новый вопрос, касающийся моей точной специфики.

Бартли Кай
источник
Вам нужно вернуть дату, полученную из верхней строки, или просто указать индикатор в столбце этой даты? Кроме того, ваше описание указывает на 1/20 в качестве ответа. Можете ли вы объяснить, почему это 2/15?
fixer1234
Извините, это была ошибка с моей стороны. Это 1/20. Мне нужно вернуть дату, найденную в верхнем ряду. @ fixer1234
Бартли Кай,

Ответы:

2

Введите эту формулу в B4 и заполните справа:

=IF(SUM($B2:B2)=20,"Quota Met","")

Вы можете заменить любой текст уведомления, который хотите. Если количество полученных элементов может не составлять ровно 20, то вы можете использовать >=20в части формулы SUM ().

введите описание изображения здесь

Отредактируйте 1 : ИЛИ, если вы действительно хотите увидеть дату, когда общее количество полученных предметов стало равным 20, тогда используйте ЭТУ формулу и заполните справа:

 =IF(SUM($B2:B2)=20,B1,"")

Применяются те же предостережения, что и выше.

введите описание изображения здесь

Спасибо за комплимент и отзыв, @ fixer1234.

Редактировать 2 : Если вы хотите, чтобы ответ находился в одной ячейке без заполнения уравнения по столбцам, введите его в B4 в качестве формулы массива (введите формулу с помощью клавиши CTRL-Shift Enter).

=OFFSET(A1,0,MATCH(20,MMULT(N(TRANSPOSE(COLUMN(B2:G2))>=COLUMN(B2:G2)),TRANSPOSE(B2:G2))))

Чтобы это работало, должна быть промежуточная сумма, равная 20, вычисленная из строки «Полученные товары».

введите описание изображения здесь

Bandersnatch
источник
1
После выяснения ОП выясняется, что это не будет соответствовать требованию. Тем не менее, это все еще простое и умное решение, которое может быть полезным для других читателей. +1
fixer1234
Мне только что пришло в голову, что ваш второй подход может на самом деле обеспечить решение этого вопроса без использования функции поиска. В месте, где требуется ответ, просто объедините все значения в строке результатов: = B4 & C4 & D4 & E4 & F4 & G4. Поскольку все неприменимые ячейки содержат Null, конкатенация будет датой. Это будет текстовая строка, поэтому, если она будет использоваться в вычислениях даты, вам необходимо проверить, будет ли Excel обрабатывать ее как дату; вам может понадобиться обернуть его в функцию, чтобы вернуть числовое значение, которое можно использовать в вычислениях даты.
fixer1234
1
Если вы собираетесь сохранить строку с вычисленной датой, эта формула массива находит дату и сохраняет ее как дату, если она отформатирована следующим образом:=OFFSET(A4,0,MATCH(FALSE,(B4:G4=""),0))
Bandersnatch
Этот вопрос был довольно забавным. :-)
Bandersnatch
Помечен как ответ, потому что для этого не требовалось использовать итоговую строку.
Бартли Кай
0

Мне кажется, что ответ должен быть 20.01.2017, а не 15.02.2017 ... что означает, что я не могу понять вопрос.

Однако то, что вам, скорее всего, нужно сделать, это

  • добавить верхнюю строку, которая показывает не отдельные номера во второй строке, а промежуточный итог (то есть 5 15 20 25 35 45)
  • используйте HLOOKUP, чтобы найти значение, которое вы хотите ( =HLOOKUP(20,B1:H2,2))
Хиня
источник
Я пересмотрел форматирование строк примеров, которые я дал, надеюсь, это устранит любую путаницу. Я бы хотел избежать использования каких-либо функций LOOKUP, так как считаю, что это стало бы повторением моего вопроса (предложенный мною вопрос является просто статическим примером), а также потому, что запрошенная формула здесь является небольшой частью всей формулы.
Бартли Кай
Я постараюсь использовать итоговую сумму, которую вы посоветовали.
Бартли Кай
1
@BartleyCai, не ясно, что вы возражаете против функции поиска. Это действительно логичный способ делать то, что вы хотите. Если вы предпочитаете не вставлять накопительную строку вверху, вы можете получить аналогичный результат, добавив его под строкой «Полученные товары» и используя INDEX и MATCH для получения даты.
fixer1234
Хм, это правильно. Я предполагаю, что у меня был некоторый уклон против функции поиска. Мой предложенный вопрос слишком общий для того, что мне нужно сделать, и я также упустил важную деталь; Я задам новый вопрос со всей моей спецификой.
Бартли Кай