Нужна формула для подсчета чисел, начинающихся с определенных цифр в строке, разделенных запятыми.

Нужна формула для подсчета чисел, начинающихся с определенных цифр в строке, разделенных запятыми.

Мне нужна формула для подсчета чисел, начинающихся с определенных цифр в строке, разделенных запятыми.

Первая цифра всегда 1, 2 или 3; вторая цифра может быть от 1 до 6. Мне нужно подсчитать цифры в строке, начинающейся с 1, 2 и 3; и если эти цифры больше нуля, то подсчитать их комбинации со второй цифрой.

Вот пример с ожидаемым решением. Допустим, A1 имеет следующую строку:

11234,12345, 23456, 31423, 13009, 14001,24005, 12222, 21222, 33215, 21236 

Затем:

  • B1 должен вернуть 5 (количество всех чисел в строке, начинающихся с 1)
  • C1 должно быть равно 3 (количество всех цифр в строке, начинающихся с 2)
  • D1 должен быть равен 2 (количество всех чисел в строке, начинающихся с 3)

решение1

Как насчет этого:

=(LEN(","&SUBSTITUTE($A$1,", ",","))-LEN(SUBSTITUTE(","&SUBSTITUTE($A$1,", ",","), ","&B2,"")))/LEN(","&B2)

(Где строкаБсодержит строки, которые вы пытаетесь сопоставить в A1.)


Как это работает:

  • Вы можете заметить, что это появляется дважды: ","&SUBSTITUTE($A$1,", ",",") это убирает пробелы и добавляет запятую в начале, поэтому ваш

исходная строка: 11234,12345, 23456, 31423, 13009, 14001,24005, 12222, 21222, 33215, 21236

становится

новаяСтрока: ,11234,12345,23456,31423,13009,14001,24005,12222,21222, 33215,21236

  • Теперь длинную формулу можно переписать так:=(LEN(newString)-LEN(SUBSTITUTE(newString, ","&B2,""))) /LEN(","&B2)

  • Предполагая, что начальные цифры, которые вы ищете, находятся вВ1(напримерВ1=1это далее сворачивается так:

=(LEN(newString)-LEN(SUBSTITUTE(newString, ",1" ))) /LEN(",1")

  • Итак, у нас есть: Получить длину всей новой строки (67), затем вычесть длину со всеми ,1удаленными вхождениями (57). Это дает вам количество символов, занятых ,1(10). Разделить на длину ,1(2), чтобы узнать, сколько раз ,1встречалось. (5)

Вы можете перетащить эту формулу в строку A и поместить в строку различные «поисковые» цифры.Би он их всех пересчитает.

Предостережение: Это сработает только в том случае, если числа разделены запятыми и/или пробелами, как в вашем примере.

решение2

https://exceljet.net/formula/count-numbers-that-begin-withПосмотрите на этот сайт. Итак, формула: =СУММПРОИЗВ(--(ЛЕВС(L1:X20,1)="(введите цифру, которую вы хотите найти, здесь)"))

Связанный контент