Підсумовувати значення в межах часу


-2

enter image description here У мене є 550 рядків даних, які представляють щоденні час польоту. Кожен рейс, залежно від типу літака, вимагає певної кількості людей, щоб відвідати рейс. Це завдання займає 45 хвилин. Таким чином, у будь-який час польоту, люди будуть зайняті цим рейсом плюс будь-які польоти протягом попередніх 45 хвилин. Я хочу отримати сукупний підрахунок загальної кількості людей, необхідних у будь-який час польоту. Я також хочу розглядати 45 хвилин як вхідну змінну, щоб побачити, як зміни до цього часу впливають на попит робочої сили в кожний час польоту.

Ось макет того, як виглядають дані:

     A            B         C.        D
1   2:30          4        0:45       4
2   2:45          3.                  7
3   3:15          2.                  9
4   3:30          4.                  9
5   3:35          5.                 11

Колонка А містить час польоту. Колона B містить кількість людей, необхідних для цього рейсу. Стільник C1 містить значення для часу завдання. Я хочу заповнити стовпець D сукупним підрахунком персоналу, необхідного для кожного часу польоту. Наведений приклад показаний з результатами заповнення.

Приклад розрахунку буде виглядати так. Використовуйте рядок 4 як приклад. Час польоту - 3:30. Виходячи з 45-хвилинного часу, всі польоти на або після 2:45 вимагають одночасно активних людей. Таких польотів три, 2:45, 3:15 і 3:30. Штатне забезпечення з колони B для цих рейсів становить 3, 2 і 4, тому загальна кадрова потреба на час польоту 3:30 становить 9. Це те, що йде в D4.

Якби я змінював час виконання завдання в C1 на 30 хвилин, тільки польоти 3:15 і 3:30 можна було б одержати, тому загальна сума в D4 склала б 6.

я намагався SUMIF і SUMIFS. Я додав рядок з мінусом даних (часу) C1 потім спробував підбити все в B між цим діапазоном часу. Я не можу отримати B , щоб додати дані.

я намагався

    =sumif(A:A,"<=A4",B:B)-sumif(A:A,"<=A4-C1",B:B)

Ви даєте 0:45 змінної, де є змінною 3:30 виходячи з? Чи буде формула завжди працювати 3:30?
CharlieRB

@ CharlieRB: Він говорить у питання, що 3:30 приходить з клітинки A4. Чому він користується A4 як його приклад, що він хоче зробити на рядках 1, 2 і 3, і які відносини між ними A4 і C1 є, залишаються таємницями.
Scott

@CharlesT: Не прошу вибачення за те, що не в змозі коментувати; роз'яснень до питання слід подаються як зміни до питання. Натисніть посилання "прапор" і попросіть об'єднати два облікові записи, щоб ви могли редагувати своє запитання безпосередньо, не переглядаючи його. Потім спробуйте пояснити, що ви хочете більш чітко. Це може допомогти, якщо ви включите ілюстрацію повного аркуша, як ви цього хочете.
Scott

Чи можете ви поділитися формулою ви намагалися для обох SUMIF і SUMIFS?
CharlieRB

Зв’яжіться зі Stack Exchange, де облікові записи об'єднані: superuser.com/contact
slhck

Відповіді:


0

Ось одне рішення. Це формула для D1. Введіть його, а потім скопіюйте для інших клітин у D:

    =SUM(INDIRECT("b"&IF(ISNA(MATCH(A1-C$1,A$1:A1,0)),IF(ISNA(MATCH(A1-C$1,A$1:A1,1)),1,MATCH(A1-C$1,A$1:A1,1)+1),MATCH(A1-C$1,A$1:A1,0))):B1)

Це в основному логіка. Він знаходить перший рядок, який відповідає вашим критеріям, а потім підсумовує значення в B між цим і поточним рядком. Спосіб знаходить перший рядок, використовуючи функцію MATCH, щоб порівняти час у col A мінус час у C1 з значеннями часу у рядках до і включаючи поточний рядок. MATCH не має GE для пошуку значень у порядку зростання, тому це використовує комбінацію LE та EQ.

  • Якщо немає нічого LT, це означає, що рядок 1 є GE, так що це перший рядок.
  • Якщо рядок EQ, це початковий рядок.
  • Якщо рядок LE, але не EQ, це означає, що наступний рядок є першим GE, так що це перший рядок.

Вау ... це спрацювало. Ви легенда. З моїми маленькими знаннями, які я перевищую, я це розумію.
Charles T

На жаль, не можна редагувати мій останній коментар. Я натиснув Enter, щоб спуститися вниз. Вау ... це спрацювало. Ви легенда. З моїми маленькими знаннями, які я перевищую, я це розумію. Дуже дякую. Єдине, що він робить, це його підведення першого набору даних за межі діапазону. Приклад - це 2:00 на моїй електронній таблиці, яка повинна підсумувати все між 1:45 2:00. Те, що він робить, збирає дані в 1:10. Це перший набір даних за межами діапазону. Чи знаєте ви щось, що це виправило б? Я сподіваюся, що це має сенс.
Charles T

Це велике питання, яке не настільки унікальне, як воно з'явилося вперше. Я не думаю, що ви єдина людина з цим типом проблеми. Я вважаю, що це було проголосовано, тому що важко було слідувати, особливо перед тим, як ви додали деякі пояснення. Я надіслав деякі зміни, щоб полегшити їх розуміння.
fixer1234

Якщо ви все ще використовуєте 45 хвилин, діапазон повинен починатися о 1:15. Однак, 1:10 все ще виходить за межі діапазону. Я перевірив його на таких умовах, і це спрацювало. Мені цікаво, якщо в процесі копіювання один з діапазонів був пошкоджений. Подивіться на формулу в комірці, яка заплуталася, і переконайтеся, що діапазони правильні.
fixer1234

Так вибачте що було mistype діапазон мусить бути 1: 15-2: 00. Я намагаюся знайти його, але не можу. Мені довелося додати декілька замків осередків, коли я перетягую різні діапазони. Можливо, там не працює.
Charles T
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.