Чому Excel 2010 повертає різні відповіді для тієї ж формули?


1

Я намагаюся використати формулу "якщо" у стовпці N на прикріпленому знімку екрана, щоб визначити, чи мають право працівники право на премію на харчування

=IF(AND(AND((G26-F26)>TIME(6,0,0),(G26-F26)<TIME(10,0,0)),M26<TIME(0,30,0)),"YES",IF(AND(AND(L26>TIME(6,0,0),L26<TIME(10,0,0)),(G26-F26)>TIME(5,59,0)),"YES",IF(AND(((G26-F26)+(I26-H26))>TIME(10,0,0),M26<TIME(1,0,0)),"YES",IF(AND(L26>TIME(10,0,0),(I26-H26)>TIME(4,59,0)),"YES","NO"))))

enter image description here

updated excel picture to show time

Моє питання полягає в тому, чому Excel повертає "Так", наприклад. осередку N26, для деяких працівників, які працювали> 6 годин, але & lt; 10 годин, і мали 29 хвилин розриву і повертали "Ні", напр. осередку N27, для деяких співробітників з однаковою кількістю відпрацьованих годин і часу перерви?

Ви отримуєте премію за трапезу лише в тому випадку, якщо виконуються будь-які з наступних умов:

  • Ви працювали більше 6 годин, але менше 10 годин на день і не робили перерви
  • Ви працювали більше 6 годин, але менше, ніж 10 годин і зробили перерву після 5,59 годин роботи.
  • Ви працювали більше 10 годин і зайняли менше 30 хвилин перерви
  • Ви працювали більше 6 годин на день і не робили перерви
  • Ви працювали більше 10 годин і зробили другу перерву після 4,59 годин роботи (робочий час починається відлік після закінчення 1-го перерви, яка повинна відбутися до 6-ї години роботи).
  • Ви працювали більше 10 годин і займали менше 1 години перерви

Значення в F:G дійсно цілі числа, як показано? Якщо це так, то тимчасова частина відсутня, що викликає неправильний розрахунок. Крім того, якщо часовий відрізок присутній, але прихований через форматування, то ви не компенсуєте робочі періоди, які тривають до півночі. Як написано, ваші значення в F:G не відповідають датам, вказаним у B:C у всіх випадках.
Ron Rosenfeld

Завдяки Рон. Значення у F: G - це час, що відображається як порядковий номер Excel за час. Я відредагував зображення так, що F: G відображається як стандартний час. B: C не є частиною розглянутої формули, і я маю намір витягти їх з робочого аркуша.
Funmi

Існує, звичайно, дуже логічна причина, але відповідь не може бути видно безпосередньо з екрану. Спробуйте скористатися Оцінити функції, в Формула на вкладці, щоб зрозуміти, які точні розрахунки і які IF фактично повертає a TRUE.
piko

@Funmi Власне, у вашій першій картині F:G показують серійний номер тільки для дати, крім рядка 40. А в рядку 26, In і Out в F:G відрізняються на один (1) або 24 години. У рядку 27 ці значення однакові. Таким чином, ваша формула буде оцінювати ці два запису по-різному. У вашій другій картині, ви не показуєте дати взагалі в F:G, але якщо вони збігаються з оригіналом, те ж саме. Іншими словами, проблема може бути з вашими даними.
Ron Rosenfeld

Відповіді:


0

Тому що це порушує:

• Ви працювали більше 6 годин, але менше ніж 10 годин і зробили перерву після 5,59 годин роботи.

тому N26 проходить через 1221 год - 0555 год = 0626 год

і в N27 відмовитися coz 1106 год - 0551 год = 0515 год

Сподіваюся, що це допоможе. (:

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.