COUNTIF в Google Sheets с несколькими «не» или «иначе», чем условия для ответов из Google Forms - PullRequest
1 голос
/ 14 мая 2019

Я хочу сосчитать количество «других» ответов на 2 вопроса из форм Google, записанных в листе Google.

2 вопроса из форм Google предназначены для выбора между несколькими ответами или записи в тексте некоторых«другой» ответ, например:

  • Вопрос 1 - «местоположение» (Сайт A, Сайт B, Сайт C, Сайт D, прочее)
  • Вопрос 2 - «типоборудование »(ПК 1, ПК 2, Портативный компьютер 1, Портативный компьютер 2, другое)

Поэтому мне нужно сосчитать все зарегистрированное оборудование другого типа, которое находится в« других »местах.

Я пробовал разные способы записать формулу (счет, счет, запрос и т. Д.), Но результаты дают мне 1, когда она должна давать мне ноль.Я также попытался упростить формулу, чтобы написать «другие» типы оборудования для «Площадки А», но ответ все еще достаточно странен 1.

Я расстаюсь с ответами в: Указывает наТаблицы Google с различными критериями «отличны от» в одной строке добавляют +1 значение

Эти отвеченные формулы отлично работают для подсчета всего «другого» оборудования во всех «других» местах, но все равно даютмне ответ '1' для определенных местоположений.

Я думаю, проблема в том, что я смешиваю 2 запроса / формулы, но я не заставляю их работать вместе с 'и', как мне требуется, илиесли значение равно 0, то это дает мне 1.

Это моя попытка А изолировать 1 местоположение с помощью «других» типов оборудования, и это как-то дает ответ «1» (я пробовал расхождение с «<> PC1 'type:

=COUNTA(QUERY(datos_equipos!$J2:$J,"Site A", datos_equipos!$B$2:$B, 
 "where not B contains 'PC 1' 
    and not B contains 'PC 2'
    and not B contains 'Laptop 1'
    and not B contains 'Laptop 2'
    ", 0))  

Это мои попытки подсчета обоих' других 'ответов'

При попытке AI попытался сделать 2 запроса:


=COUNTA({QUERY(datos_equipos!$J2:$J, "where J <> 'Site A' and J <> 'Site B' and J <> 'Site C' and J <> 'Site D'")
     & query (datos_equipos!$B$2:$B, "where B <> 'PC 1)' 
     and B <> 'PC 2'
     and B <> 'Laptop 1'
     and B <> 'Laptop 2)'", 0)})

Попытка B такая же, как попытка Aно с 'отличным от' <> внутри '':


=COUNTA({QUERY(datos_equipos!$J2:$J, "where J '<>Site A' and J '<>Site B' and J '<>Site C' and J '<>Site D'")
    & query (datos_equipos!$B$2:$B, "where B '<>PC 1' 
    and B '<>PC 2'
    and B '<>Laptop 1'
    and B '<>Laptop 2'", 0)})  

Попытка C пытается сделать прямой счет при вызове каждого параметра и исключении пустых ячеек:


=countifs(datos_equipos!$J2:$J, "<>Site A",
                    datos_equipos!$J2:$J, "<>Site B",
                    datos_equipos!$J2:$J, "<>Site C",
                    datos_equipos!$J2:$J, "<>Site D",
                    datos_equipos!$B$2:$B, "<>PC 1", 
                    datos_equipos!$B$2:$B, "<>PC 2", 
                    datos_equipos!$B$2:$B, "<>Laptop 1",
                    datos_equipos!$B$2:$B, "<>Laptop 2",
                    datos_equipos!$B$2:$B,"<>"
                    ) 

И, наконец, попытка D. В данном случае ответ 2. Здесь я попытался запросить каждый параметр:


=COUNTA({QUERY(datos_equipos!$J2:$J, "where J '<>Site A'")
              & query (datos_equipos!$J2:$J, "where J '<>Site B'")
              & query (datos_equipos!$J2:$J, "where J '<>Site C'")
              & query (datos_equipos!$J2:$J, "where J '<>Site D'")
              & query (datos_equipos!$B$2:$B, "where B '<>PC 1'" )
              & query (datos_equipos!$B$2:$B, "where B 'PC 2'")
              & query (datos_equipos!$B$2:$B, "where B '<>Laptop 1'")
              & query (datos_equipos!$B$2:$B, "where B '<>Laptop 2'")
              , 0}) 

Итого:

В Google Sheets мне нужно количество «другого» оборудования, зарегистрированного в «других» местах.Оба поля являются полями, которые пользователь дает вместо заданных выбираемых ответов.

Я сделал для него тестовый документ.Пока что попытка D в листе 'repo_equipos_global' в ячейках N6-I6 работает лучше всего.Пока есть данные, которые соответствуют, учитывая, что оригинал прибывает из формы, которая не должна быть проблемой.[Ссылка] (https://docs.google.com/spreadsheets/d/1hnKw6LjG3Vv6-1Yg60RzzXnsh6uzFKYqyu1D36EA1jQ/edit?usp=sharing)

1 Ответ

1 голос
/ 15 мая 2019

0


ячейка C8 :

=ARRAYFORMULA(COUNTA(IFERROR(QUERY(QUERY(
 LOWER({datos_equipos!B2:B, datos_equipos!J2:J}),
 "where Col2 contains '"&LOWER(C2)&"' 
     or Col2 contains 'site1'", 0),
 "select Col1
  where not Col1 contains 'PC 1' 
    and not Col1 contains 'PC 2'
    and not Col1 contains 'PC 3'
    and not Col1 contains 'Laptop 1'
    and not Col1 contains 'Laptop 2'", 0))))

ячейка F8 :

=ARRAYFORMULA(COUNTA(IFERROR(QUERY(QUERY(
 LOWER({datos_equipos!B2:B, datos_equipos!J2:J}),
 "where not Col2 contains 'site1'
    and not Col2 contains 'site2'
    and not Col2 contains 'site3'
    and not Col2 contains 'site 1'
    and not Col2 contains 'site 2' 
    and not Col2 contains 'site 3'", 0),
 "select Col1
  where not Col1 contains 'PC 1' 
    and not Col1 contains 'PC 2'
    and not Col1 contains 'PC 3'
    and not Col1 contains 'Laptop 1'
    and not Col1 contains 'Laptop 2'", 0))))

ячейка C3 (если вы не различаете состояния site 1 и site1):

=COUNTIFS(datos_equipos!$B:$B, $A3, datos_equipos!$J:$J, C$2)+
 COUNTIFS(datos_equipos!$B:$B, $A3, datos_equipos!$J:$J, SUBSTITUTE(C$2, " ", ""))

демонстрационная таблица

...