Как посчитать группы ячеек с определенными первыми и последними символами, заключающими эти группы в Google Sheets? - PullRequest
1 голос
/ 24 мая 2019

Я пытаюсь подсчитать, сколько ячеек включено в определенные группы ячеек с определенным первым и последним символом в качестве критерия подсчета.

С отдельными подсчетами на группу.

Вот чтоконечный результат должен выглядеть следующим образом:

https://imgur.com/wnFbFz9

Чтобы каждая группа ячеек начиналась и заканчивалась символом «#» в качестве первого и последнего символа,результат должен суммировать ячейки / строки от 1-й ячейки до последней ячейки этой группы.

, чтобы для каждой группы ячеек, начинающихся и заканчивающихся символом «^» в качестве первого и последнего символа, результат долженСуммируйте ячейки / строки от 1-й ячейки до последней ячейки этой группы.

Но формула должна исключать из подсчета любую группу ячеек, которые не начинаются и не заканчиваются символами «^» или «#» в качестве первогои последний символ.

И, в идеале, отображать результат суммирования в последней ячейке каждой группы слева (как в столбце B на снимке экрана выше).

До сих пор,Я только придумал функцию = ROWS () для ручного подсчета ячеек этих групп.Но это утомительно.

Например, чтобы разобраться с примером скриншота, я бы сделал:

=ROWS(C3:C5)   (with 3 as result in cell B5)

Тогда

=ROWS(C8:C10)  (with 3 as result in cell B10)

Ничего в ячейке B15

Тогда

=ROWS(C23:C25)  (with 3 as result in cell B25)

И т. Д.

Как получить эти результаты с помощью одной формулы для всего столбца B?

1 Ответ

0 голосов
/ 25 мая 2019

Тем временем я нашел этот пост:

Сумма по вертикали до пустой ячейки в Google Sheets

Что частично отвечает на счетчасть моего поста.

Это заставило меня задуматься, и я вычислил эти 3 шага.

1-й шаг: подсчитать все клетки с помощью len.

=IF(len(C2),1,"")

enter image description here

2-й шаг: адаптировать формулу:

IF(C2="",SUM(C3:INDEX(C3:C,MATCH(TRUE,(C3:C=""),0))),"")

, найденную на посте выше, к этому (учитывая более одной промежуточной пустой строки (D1, D2, D3, D4 и т. Д.):

=IFS(OR(AND(D1="",D2="",D3="",D4=""),AND(D1="",D2="",D3=""),AND(D1="",D2=""),D1=""),SUM(D2:INDEX(D2:D,MATCH(TRUE,(D2:D=""),0))),TRUE,"")

enter image description here

Шаг 3. Перемещение по формуле шага 2 в ячейку F4 и перетаскивание оттуда кполучить результаты в последней ячейке каждой группы (вместо ячейки над каждой группой, как в исходном расположении формулы на E2)

enter image description here

Осталосьвопросы:

Как указать функцию суммы для работы с конкретными символами (например, "#" и "^") вместо функции lenКритерии ячеек?

Как изменить результаты с нулевыми ячейками на пробелы?

Как объединить формулы шагов 2/3 в одну пошаговую формулу?

Вот копияэлектронная таблица, если необходимо:

4 : Как подсчитать группы ячеек с определенными первым и последним символами, заключающими эти группы в Google Sheets?

В качестве альтернативы, после ответа на этот пост @shawnrad:

Подсчет строк с непустым значением

Я использовал здесь функции ВЛЕВО и ВПРАВО:

=IF((OR(LEFT(C1,1)="#",RIGHT(C1,1)="#",LEFT(C1,1)="^",RIGHT(C1,1)="^")),1,"")

чтобы прийти к этим результатам:

enter image description here

=IF(OR(COUNTIF(C2,"#*"),COUNTIF(C2,"*#"),COUNTIF(C2,"^*"),COUNTIF(C2,"*^")),1,"")

enter image description here

Какзатем применить функцию SUM или любую другую функцию для суммирования ячеек / строк за интервалы между (и включая) возвращенными результатами последней функции?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...