¿Algún experto en excel en la sala?

Creo que este es el subforo que casa más con el tema, espero no equivocarme.

Os cuento una movida que me tiene loco, de una cosa que quiero hacer en el excel.

Supongamos que tengo una tabla con dos columnas, una con el email de un usuario y otra con el grupo al que pertenece. ALgo así, por poner un ejemplo sencillo:

EMAIL..............GRUPO
pedro@a.com ... pelis
pedro@a.com ... comics
pedro@a.com ... juegos
laura@a.com ... pelis
rosita@a.com ... comics

Estos datos me los descargo de otro programa que me los lanza así tal cual. La movida es que estoy intentando conseguir que me lo deje de forma que solamente me salga un email en una linea sin repetirse, con todos los grupos en una sola zelda. Es decir, algo así:

EMAIL............... GRUPO
pedro@a.com ... pelis, comics, juegos
laura@a.com ... pelis
rosita@a.com ... comics

No entiendo como puedo hacer esto de forma automática (tiene que ser así porque la lista real es de miles de nombres y grupos)

¿Alguna idea?
Si tienes o quieres crear una base de datos, porque usas una hoja de calculo??
Es que Excell no es un programa para gestionar bases de datos, lo cual no quita que puedas hacer algo como lo que comentas, pero quizas con un SGDB puedas obtener mejores resultados.
@Tilacino EL problema es que está montado así y no lo puedo cambiar :-S
@Golondrino ok, gracias por la respuesta.
Se algo de excell pero eso no se por donde pillarlo.
Está la opción de quitar duplicados, que te dejaría solo un mail, pero no te uniría los grupos..
@bascu Claro, ese es exactamente el problema que tengo.
Creas un Access, importas, haces la consulta, exportas, yatta!
Tilacino escribió:Si tienes o quieres crear una base de datos, porque usas una hoja de calculo??
Es que Excell no es un programa para gestionar bases de datos, lo cual no quita que puedas hacer algo como lo que comentas, pero quizas con un SGDB puedas obtener mejores resultados.


Que es un SGDB?
@kechua sistema de gestión de base de datos.
Tilacino escribió:@kechua sistema de gestión de base de datos.


Investigare, lo mismo me es útil en el trabajo.

Muchas gracias
Puedes hacer una macro en VBA.
Por encima:
-Ordena las filas en orden alfabético (así los emails iguales estan seguidos). Vas procesando, concatenas los textos de los grupos y eliminas las filas duplicadas procesadas o vas generando sobre una hoja nueva.
Haber, que excel es dio , hace mucho que no lo uso y seguro que hay una forma de hacerlo o mejor.

Primero esa lista que importas de otro programa , la importas varias veces es decir una vez a la semana o dos , o simplemente la obtienes una vez y listo .

si es el primer caso la cosa se complica un poco .

obtienes la lista y con filtros puedes hacer algo similar a lo que quieres pero no juntando.

para juntar en un solo registro la cosa se complica , tendrías que usar funciones y al menos tener un numero limitados de grupos es decir hay como maximo 5 o 6 grupos o 10 grupos posibles pero fijos. tambien sera necesario que controles posicion de celdas y celdas relativas.
vas a necesitar funciones de buscar y sus variantes , coindicir , y la funcion SI eso asi para empezar , vamos a buscar coincidencias en ese taso grupos y en caso afirmativo vamos a copiar a una celda adyacente , sera la celda adyacente la que tenga la formula.
Puedes usar la Excel mediante Google Sheets.
Un enlace sobre SQL y Google Sheets: https://www.benlcollins.com/spreadsheet ... query-sql/
Aún así, otros usuarios ya te han comentado muy buenas alternativas.
@Golondrino
Tan fácil como crear una tabla dinámica en excel.

Email en campos Fila
Grupos en el campo Columnas
En valores, puedes poner único

Y te sale el listado que tú quieres.

Piensa que excel es para trabajar con números principalmente, no con texto.
Justo esto es lo que te iba a sugerir, solo con un condicional "si", mientras tu campo correo sea igual al de abajo, concatena el campo actual con el siguiente, de esta forma el último tendrá todos los anteriores, al pasar al siguiente correo se reinicia, muy sencillo, sin macros y rápido. Ejemplo:
a - b - c
@correo1 - cómics - =valor b1
@correo1 - pelis - si(a2=a1, c1&b2,b2)
@correo1 - audio - recorres la formula de arriba
@correo2 - pelis

Espero haberme explicado, saludos

PD excel si puede trabajar con textos
15 respuestas