Goles de cada equipo
- Jaime Franco Jimenez

- 30 ago 2023
- 3 Min. de lectura
Para el siguiente ejemplo, tenemos dos columnas, donde en cada dos columnas, tenemos un enfrentamiento entre dos equipos de futbol, después, tenemos una tercera columna con los resultados.

Debemos de crear un reporte donde aparezca cada equipo, y, los goles marcados por cada equipo.
Vamos a añadir dos columnas al modelo, una con los goles del primer equipo, y, otra columna con los goles del segundo equipo.
Debemos de encontrar el guion medio, tanto para extraer goles por la izquierda, como por la derecha.
En la celda D2, vamos a encontrar el guion medio en la columna de resultado, para ello, usamos la función ENCONTRAR, como argumento texto buscado, entre comillas dobles, ponemos el guion medio, como argumento dentro del texto, seleccionamos el rango C2:C11.
=ENCONTRAR("-";C2:C11)
Obtenemos una matriz desbordada con la posición del guion medio, vemos que el encuentro Sevilla AC Milán, e, resultado es 10-9, entonces, el guion medio se encuentra en la posición 3, el resto es en la posición 2.

Encontrar el guion medio, es porque vamos a crear dos matrices, en una primera matriz, tendremos los goles para la primera columna de equipos, en una segunda matriz, tendremos los goles de los equipos de la segunda columna.
A la función ENCONTRAR, restamos 1, y, son los caracteres para extraer por la izquierda.
=ENCONTRAR("-";C2:C11)-1
Usamos la función IZQUIERDA, como argumento texto, son los goles, como argumento número de caracteres, es la función ENCONTRAR.
=IZQUIERDA(C2:C11;ENCONTRAR("-";C2:C11)-1)
Obtenemos los goles de los equipos de la primera columna, pero, vemos que los números se alinean a la izquierda, porque están en formato de texto, pues, antes de IZQUIERDA, usamos la función ABS.
=ABS(IZQUIERDA(C2:C11;ENCONTRAR("-";C2:C11)-1))

Lo siguiente es encontrar, de nuevo, la posición del guion medio al cual restamos la longitud de cada cadena, el resultado son los caracteres para extraer por la derecha.
=LARGO(C2:C11)-ENCONTRAR("-";C2:C11)
Nos devuelve un carácter a extraer por la derecha de cada cadena, usamos la función DERECHA, como argumento texto, seleccionamos la columna de resultados, como argumento número de caracteres, es la expresión anterior, volvemos a usar antes de la función DERECHA, la función ABS.
=ABS(DERECHA(C2:C11;LARGO(C2:C11)-ENCONTRAR("-";C2:C11)))
Ya tenemos los goles de los segundos equipos.

Los equipos son los mismos en ambas columnas, en la celda G2, nos traemos los equipos únicos de la primera columna.
=UNICOS(A2:A11)

En la celda H2, usamos la función SUMAR.SI, como argumento rango, seleccionamos el rango A2:A11, como argumento criterio, seleccionamos la celda G2 y ponemos el operador de rango derramado, son los equipos únicos, como argumento rango de suma, seleccionamos la celda D2 junto con el operador de rango derramado son los goles de los equipos de la primera columna.
=SUMAR.SI(A2:A11;G2#;D2#)
Obtenemos los goles de los equipos únicos de la primera columna.

Después de la función SUMAR.SI, ponemos el signo de mas (+), volvemos a poner la función SUMAR.SI, como argumento rango, seleccionamos el rango B2:B11, como argumento criterio, seleccionamos los equipos únicos, como argumento rango de suma, seleccionamos la celda E2 junto con el operador de rango derramado, son los goles de los equipos de la segunda columna.
=SUMAR.SI(A2:A11;G2#;D2#)+SUMAR.SI(B2:B11;G2#;E2#)
Ya tenemos los goles de cada equipo.

Pero, en vez de tener dos matrices, creo que seria mejor tener una sola matriz, para ello, volvemos a la expresión, después del signo igual, ponemos la función APILARH, como argumento matriz1, son los equipos únicos.
= APILARH(UNICOS(A2:A11)
Como argumento matriz2, son los SUMAR.SI, pero cambiamos el argumento criterio por la función UNICOS(A2:A11).
=APILARH(UNICOS(A2:A11);SUMAR.SI(A2:A11;UNICOS(A2:A11);D2#)+SUMAR.SI(B2:B11;UNICOS(A2:A11);E2#))
Pues, ya lo tenemos.

Por último, ordenamos por goles de mayor a menor, para ello, después del signo igual, ponemos la función ORDENAR, como argumento matriz es nuestra expresión, como argumento numero de índice, ponemos 2, como argumento criterio de ordenación, seleccionamos -1.
=ORDENAR(APILARH(UNICOS(A2:A11);SUMAR.SI(A2:A11;UNICOS(A2:A11);D2#)+SUMAR.SI(B2:B11;UNICOS(A2:A11);E2#));2;-1)
Aceptamos, y, ya tenemos nuestro ejemplo resuelto.

Miguel Angel Franco




Comentarios