Разбиение задачи на 3 формулы позволит вам поддерживать столько «слов», сколько вы хотите.
Шаг 1) поместите формулу в D29
трактуйте все слова как одно слово ( глядя на ваш вопрос, кажется, что это единственный шаг, который вам действительно нужен)
=query(arrayformula(trim(substitute(transpose(split(query({substitute(B3:B," ","_")},"select * where Col1 is not null",counta(B3:B)),", ")),"_"," "))),"select Col1, count(Col1) group by Col1 order by count(Col1) desc label Col1 'Descriptions', count(Col1) 'Frequency'")
Шаг 2) поместите формулу в F29
Поместите эту следующую формулу рядом с таблицей, созданной по формуле выше , D30:D
следует заменить, если вы используете разные диапазоны.
=arrayformula({"Words";if(D30:D="","",1+LEN(D30:D)-len(SUBSTITUTE(D30:D," ","")))})
Шаг 3) поместить формулу в G29
Это выведет наибольшую частоту, упорядоченную по количеству слов D29:F
следует заменить, если вы используете разные location
=query({D29:F},"select * where Col1 is not null order by Col3,Col2 desc")
Преимущество такого способа в том, что вы поддерживаете 1,2,3,4 ... частоту слова.