
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
=1
esto 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
,1
eliminada (57). Eso te da la cantidad de caracteres ocupados por,1
(10). Divide por la longitud de,1
(2) para saber cuántas veces,1
ocurrió. (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)"))