es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Contando y sumando múltiples variables de una sola celda en hojas.

Tengo un documento de hojas que tiene celdas en las que los usuarios ingresan datos. Saben que deben ingresar los datos en un formato específico: un ‘número’ y una ‘letra’, seguido de un espacio, un número SKU y luego una coma.
Me gustaría tener una fórmula que cuente la cantidad de cada una de las ‘letras’ y luego sume los ‘números’ de cada letra.

Solo hay cinco ‘letras’ entre las que los usuarios pueden elegir: M, E, T, W, B.
Los datos que ingresan los usuarios no están restringidos en cuanto a orden establecido, y no hay límite en cuánto pueden ingresar, siempre que siga la sintaxis mencionada anteriormente.

Adjunté una captura de pantalla de un ejemplo de cómo debería verse esto.
La celda amarilla es el dato ingresado por el usuario, y las celdas verdes son los datos creados por la fórmula.

O aquí está el enlace a una versión en vivo: enlace

Intenté hacerlo con COUNTIF, pero no funcionó. Supongo que debería hacerse con una matriz, pero no sé por dónde empezar. Si pudiera ver un ejemplo de algo similar, probablemente podría hacer el resto.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    Para contar el número de cada letra y sus correspondientes números en Google Sheets, puedes utilizar la siguiente fórmula:

    =QUERY({ArrayFormula(LEFT(A2:A,1)),ArrayFormula(VALUE(REGEXEXTRACT(A2:A," (\d+)")))}, "select Col1,sum(Col2) where Col1 is not null group by Col1 label Col1 'Letra',sum(Col2) 'Número Total'")

    Esta fórmula utiliza la función QUERY para agrupar los datos por la primera letra y sumar los números asociados con cada letra.

    Así es como funciona la fórmula:

    • LEFT(A2:A,1) extrae la primera letra de cada celda en la columna A.
    • REGEXEXTRACT(A2:A," (\d+)") extrae los números después del espacio en cada celda de la columna A. (\d+) captura uno o más números en un grupo, que luego extraemos usando la función VALUE para convertir la cadena en un número.
    • {} combina los dos arrays en un único array con dos columnas.
    • "select Col1,sum(Col2) where Col1 is not null group by Col1 label Col1 'Letra',sum(Col2) 'Número Total'" es la declaración de consulta que agrupa los datos por la primera columna (Letra) y suma la segunda columna (Número Total), mientras agrega etiquetas a la salida.

    Puedes ingresar esta fórmula en la celda C1 de tu hoja de cálculo de Google y generará la salida que se muestra en las celdas verdes en tu captura de pantalla.

    Ten en cuenta que esta fórmula asume que los datos de entrada están en la columna A a partir de la fila 2. Puedes ajustar el rango en la fórmula para que coincida con el rango real de tus datos de entrada.

Comments are closed.