Формула и запрос подсчитывают уникальные значения, но не отображают нули

Я работаю над запросом/формулой в Google Sheets с помощью этого сайта.

Он почти идеален для наших нужд, но когда нет данных для подсчета, он по-прежнему показывает 1, хотя на самом деле должен показывать 0.

Это запрос

=COUNTUNIQUE(
  QUERY(F2:I,
        "Select G 
          where F='DG' 
            and I is not null 
            and H='Booked' " 
            & IF(C2="<>",,"and I="&C2&"")))

Я создал образец листа, чтобы показать проблему здесь https://docs.google.com/spreadsheets/d/1P0sHIUN12Wpbr6vKJAwsPluj-T2H-NrPpQ1_WWV7lvI/edit?usp=sharing

В примере ячейка C2 указывает формуле в C4 искать бронирования с 10-й недели принятия решений (столбец I). На 10-й неделе бронирований нет, поэтому в ячейке C4 должно быть 0, а на самом деле — 1.

Мы разработали его таким образом, что если ‹> вводится в C2, он показывает все уникальные бронирования, где столбец I не пуст.

Как решить эту проблему, чтобы отображался ноль? Кто-нибудь может помочь?


person themeparkfocus    schedule 14.09.2018    source источник


Ответы (1)


Проблема связана с двумя фактами

  • запрос, возвращающий пустой результат, возвращает ошибку, #N/A
  • функция COUNTUNIQUE(), по-видимому, считает #N/A допустимым типом значения

Исправление заключается в преобразовании ошибки в нулевое значение, которое затем не будет учитываться COUNTUNIQUE():

=COUNTUNIQUE(
  IFERROR(
    QUERY(F2:I,
          "Select G 
            where F='DG' 
              and I is not null 
              and H='Booked' " 
              & IF(C2="<>",,"and I="&C2&"")),
    ""))
person ttarchala    schedule 14.09.2018
comment
Это сработало отлично, и большое спасибо за то, что так ясно объяснили, почему все пошло не так. - person themeparkfocus; 14.09.2018