Это похоже на вопрос, уже опубликованный и отвеченный здесь . Разница в том, что варианты моего вопроса с несколькими вариантами ответов уже содержат запятые.
Я хотел бы составить итоговую сумму, чтобы можно было составить гистограмму. У меня есть вопрос с несколькими вариантами ответов с запятыми внутри них. Например:
Foods I like (select all that apply):
- Fruit (Apples, Oranges)
- Vegetables (Carrots, Corn)
- Meat (Beef, Chicken)
Формула =query({A5:A13},"SELECT Col1,count(Col1) group by Col1")
даст мне что-то вроде:
Fruit (Apples, Oranges) -- 1
Fruit (Apples, Oranges), Vegetables (Carrots, Corn) -- 1
Fruit (Apples, Oranges), Vegetables (Carrots, Corn), Meat (Beef, Chicken) -- 1
Мой ожидаемый результат (используя те же данные выше):
Fruit (Apples, Oranges) -- 3
Vegetables (Carrots, Corn) -- 2
Meat (Beef, Chicken) -- 1
Ответ на аналогичный вопрос, на который я ссылался выше, будет таким:
=query(transpose(split(JOIN(",",A5:A13),",",true,true)),"SELECT Col1,count(Col1) group by Col1")
В данном случае это не сработает, поскольку разделит параметры на ,
Я также разделил бы каждый ответ на несколько ответов ... Это дает мне вывод наподобие:
Fruit (Apples -- #
Oranges) -- #
Vegetables (Carrots -- #
Corn) -- #
Meat (Beef -- #
Chicken) -- #
Как вы видите, варианты вопроса разбиты на несколько вариантов. Как составить сводку по счетчикам без ручного редактирования данных ответов?
РЕДАКТИРОВАТЬ: я создал тестовую таблицу .
РЕДАКТИРОВАТЬ: обновлено с решением @ zummontt :
В настоящее время я использую формулу =QUERY(TRANSPOSE(SPLIT(SUBSTITUTE(TEXTJOIN("|",TRUE,D3:D7),"), ",")|"),"|")),"SELECT Col1,count(Col1) group by Col1")
и получаю вывод:
Fruit (Apples, Oranges) -- 3
Grain, Sweets -- 1
Grains, Fruit (Apples, Oranges) -- 1
Meat (Beef, Chicken) -- 2
Sweets -- 1
Vegetables (Carrots, Corn) -- 3
Проблемы с этим выводом:
- не разделил "Зерна" и "Сладости"
- не разделил "Зерна" и "Фрукты (яблоки, апельсины)"
- как получить "Нет" (Я не ем еду) ", чтобы показать, если он имеет 0 счет?