Не удается получить ожидаемые результаты в операторе IF, если ссылка на другую ячейку также выполняется с помощью оператора IF - PullRequest
0 голосов
/ 11 марта 2020

Проблема, я ищу результат в одной ячейке на основе результатов в другой ячейке, где обе ячейки используют операторы IF. Ожидаемый результат не отображается.

Пример

Ячейка N14 использует формулу SUMIF для добавления количества часов, отработанных человеком.

  • В этом выпуске результат равен нулю (0).
  • Результатом SUMIF при значении false является "", показывающий пустую ячейку

Формула

  • = SUMIFS ([Column_Hours_Worked], [Column_Name], [Name], [Column_Date], [Date], "", "")
  • Формула, которую я знаю, работает, как видно в ячейке N13.

Ячейка O14 использует оператор IF и возвращает «X», если N14 меньше восьми (8))

  • = IF (N14> = 8, "", "X")

Кажется, что ячейка N14 работает нормально, поскольку я вижу, что ячейка пуста. - Это ожидается.

В ячейке O14 не отображается ожидаемое "X".

Устранение неполадок

  • Я могу ввести ноль вручную (0) в N14, что вызывает ожидаемое "X" в O14.
  • Я изменил ложный результат SUMIF с пустого ("") на ("0.0") и не увидел ожидаемого "X" в O14.
    • OO наблюдалось в ячейке N14, так как SUMIF привел к ложному утверждению, или ("0.0")

Фон

  • Я создал электронную таблицу для отслеживания количества часов, которые люди работают в данный день.
  • Я бы хотел быстро определить, когда в этом примере отработано менее 8 часов.
  • N14 = количество отработанных часов.
  • O14 = флаг ("X") менее чем за 8 часов.

Есть предложения?

1 Ответ

0 голосов
/ 12 марта 2020

Я пересоздал электронную таблицу с вашими формулами и некоторыми базовыми c данными. Когда я удалил последние два аргумента из вашей формулы N14, она сработала для меня (см. Ниже).

=SUMIFS([Column_Hours_Worked],[Column_Name],[Name],[Column_Date],[Date])

Есть ли конкретная c причина, по которой вы хотите, чтобы SUMIFS возвращали "" вместо 0? На самом деле, я не могу заставить SUMIFS работать с этими двумя последними аргументами. Вы упомянули, что у вас есть аргумент sumif для ложного аргумента, но я не верю, что у функции sumif есть вход для «if false return this». Если вы хотите, чтобы вам пришлось вкладывать SUMIFS в формулу IF (как показано ниже), а затем вы можете объединить формулы N14 и O14.

=IF(SUMIFS([Column_Hours_Worked],[Column_Name],[Name],[Column_Date],[Date]<=8,"X","")
...