2

Это образец моего ввода:

образец входных данных

Затем у меня наступают полудни в последующие дни, и я хотел бы достичь этого результата автоматически:

Проще говоря: у меня есть даты в одном столбце, и я хотел бы найти последнее время, которое наступает до полуночи дня, и первое время, которое наступает после этой полуночи. В течение одного дня не может быть ни одного, ни одного, ни нескольких дат. Мне также нужно найти значение, которое находится в столбце рядом с исходным вводом.

К вашему сведению: входные данные являются снимками моего газового счетчика. Число в столбце Значение - это общее количество кубических метров, потраченное до времени в первом столбце. Мне нужно найти эти значения границ, чтобы рассчитать расходы за день. Я могу сделать расчет, но мне не удается найти эти значения на входе.

Спасибо!

1 ответ1

3

Вы захотите использовать функцию MATCH .  Это похоже на HLOOKUP и VLOOKUP за исключением того, что он возвращает индекс (1 .. n), а не значение (и если вы не знакомы с HLOOKUP и VLOOKUP , вам, вероятно, следует узнать о них).  MATCH(D2, $A$2:$A$14) вернет индекс последнего значения в $A$2:$A$14 , которое меньше или равно D2 ; т.е. (индекс) в последний раз перед полуночным временем в D2 .  (Это в виде целого числа от 1 до 13, что может немного сбивать с толку, но это все хорошо.)  Чтобы избежать избыточности, полезно использовать «вспомогательные столбцы»; поэтому я положил =MATCH(D2, $A$2:$A$14) в I2 .  Затем введите эти формулы:

  • E2=INDEX($A$2:$B$14, $I2, 1)
  • F2=INDEX($A$2:$B$14, $I2, 2)
  • G2=INDEX($A$2:$B$14, $I2+1, 1)
  • H2=INDEX($A$2:$B$14, $I2+1, 2)

где мы используем INDEX для извлечения желаемых значений из столбцов A и B

Я немного очистил ваши данные для целей тестирования / демонстрации:

                                                                Столбцы А и В

и вот результаты:

                                Столбцы от D до I

Это взорвется для дат в столбце D , предшествующих A2 .  Чтобы это исправить, добавьте еще один вспомогательный столбец (J) и измените G и H:

  • J2=IFERROR(I2, 1) + 1
  • G2=INDEX($A$2:$B$14, $J2, 1)
  • H2=INDEX($A$2:$B$14, $J2, 2)

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