Saltar al contenido

Concatenar 3 columnas y eliminar carácter especial

publicado

Buenas noches a todos..
Tengo 3 columnas (C,D,E) con datos de correos electrónicos, los quiero unir en un sola columna (F).
Para ello, utilizo la función concatenar, y los separo mediante el punto y coma
Pero cuando una celda está vacía, al concatenar me pone el punto y coma..

Y como se puede ver en la columna "F", aparece al principio los puntos y comas, y cuando la columna  D, no tiene datos, me aparecen en medio de los datos de las columnas C y E.

Alguien me podría indicar como crear una macro para que se juntaran los datos, y cuando la celda está vacía, no incluya el separador punto y coma.

Gracias a tod@s..

Feliz Año 2022.. 

Concatenar Emails.xlsm

Featured Replies

publicado
  • Autor

Muchas gracias Janlui.. 
Esa formula nunca la había utilizado, ahora ya sé una cosa más.. 

Gracias ..

 

publicado

Te hice esta funcion para que ejecute lo que buscabas

publicado
Function UnirCorreos(C As String, D As String, E As String) As String
If Not C = "" Then UnirCorreos = ";" & C
If Not D = "" Then UnirCorreos = UnirCorreos & ";" & D
If Not E = "" Then UnirCorreos = UnirCorreos & ";" & E
UnirCorreos = Mid(UnirCorreos, 2)
End Function

Otra opción parecida a la  de Janlui, pon la función en un módulo y esta formula en F2:

=UnirCorreos(C2;D2;E2)

publicado

Hola,

como información adicional si tienes la versión de Excel 365 puedes usar la siguiente fórmula en F2:

=+UNIRCADENAS(";";VERDADERO;Tabla13[@[EMAIL]:[CORREO]])

donde VERDADERO significa omitir las celdas vacías

Saludos

publicado
  • Autor

Gracias Antoni por tus propuestas..

En 31/12/2021 at 10:49 , Antoni dijo:
Function UnirCorreos(C As String, D As String, E As String) As String
If Not C = "" Then UnirCorreos = ";" & C
If Not D = "" Then UnirCorreos = UnirCorreos & ";" & D
If Not E = "" Then UnirCorreos = UnirCorreos & ";" & E
UnirCorreos = Mid(UnirCorreos, 2)
End Function

Otra opción parecida a la  de Janlui, pon la función en un módulo y esta formula en F2:

=UnirCorreos(C2;D2;E2)

 

publicado
  • Autor
En 31/12/2021 at 10:59 , Frank2021 dijo:

Hola,

como información adicional si tienes la versión de Excel 365 puedes usar la siguiente fórmula en F2:

=+UNIRCADENAS(";";VERDADERO;Tabla13[@[EMAIL]:[CORREO]])

donde VERDADERO significa omitir las celdas vacías

Saludos

No tengo esa versión, pero gracias Frank2021 por tu aportación.. 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.