Necesita una fórmula para contar números que comienzan con dígitos específicos en una cadena separada por comas

Necesita una fórmula para contar números que comienzan con dígitos específicos en una cadena separada por comas

Necesito una fórmula para contar números que comienzan con dígitos específicos en una cadena separada por comas

El primer dígito es siempre 1,2 o 3; el segundo dígito puede estar entre 1 y 6. Necesito contar los números en la cadena que comienza con 1, 2 y 3; y si esos recuentos son mayores que cero, cuente sus combinaciones con el segundo dígito.

Aquí está el ejemplo con la solución esperada. Digamos que A1 tiene la siguiente cadena:

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

Entonces:

  • B1 debería devolver 5 (un recuento de todos los números en la cadena que comienza con 1)
  • C1 debe ser 3 (un recuento de todos los números en la cadena que comienza con 2)
  • D1 debe ser 2 (un recuento de todos los números en la cadena que comienza con 3)

Respuesta1

Qué tal esto:

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

(Donde filaBcontiene las cadenas que está intentando hacer coincidir dentro de A1.)


Cómo funciona:

  • Puede notar que esto aparece dos veces: ","&SUBSTITUTE($A$1,", ",",") esto elimina los espacios y agrega una coma al frente, para que su

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

se convierte

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

  • Ahora la fórmula larga podría reescribirse como:=(LEN(newString)-LEN(SUBSTITUTE(newString, ","&B2,""))) /LEN(","&B2)

  • Suponiendo que los dígitos iniciales que busca están enB1(p.ejB1=1esto colapsa aún más así:

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

  • Entonces tenemos: Obtener la longitud de toda la nueva cadena (67), luego restar la longitud con todas las apariciones de ,1eliminada (57). Eso te da la cantidad de caracteres ocupados por ,1(10). Divide por la longitud de ,1(2) para saber cuántas veces ,1ocurrió. (5)

Puede arrastrar esta fórmula a través de la fila A y colocar diferentes dígitos de "búsqueda" en la filaBy los contará todos.

Advertencia: Esto solo funcionará si los números están separados por comas y/o por espacios, como en su ejemplo.

Respuesta2

https://exceljet.net/formula/count-numbers-that-begin-withmira este sitio web. Entonces la fórmula es: =SUMPRODUCT(--(LEFT(L1:X20,1)="(ponga aquí el dígito que desea encontrar)"))

información relacionada