La función CONCATENAR en Excel

La función CONCATENAR en Excel nos permite unir dos o más cadenas de texto en una misma celda lo cual es muy útil cuando nos encontramos manipulando bases de datos y necesitamos hacer una concatenación.

Sintaxis de la función CONCATENAR

La función CONCATENAR tiene una sintaxis muy sencilla donde cada argumento será un texto que se irá uniendo al resultado final. El máximo de argumentos que podemos especificar en la función es de 255 y el único obligatorio es el primer argumento.

La función CONCATENER en Excel

  • Texto1 (obligatorio): El primer texto que se unirá a la cadena de texto final.
  • Texto2 (opcional): El segundo texto a unir al resultado final. Todos los argumentos son opcionales a partir del segundo argumento.

Ejemplo de la función CONCATENAR

La función CONCATENAR nos puede ayudar en casos en los que la información está distribuida en varias columnas y deseamos integrar la información en una sola. Por ejemplo, tengo información de los nombres de los empleados en 3 columnas diferentes:

Ejemplo de la función CONCATENAR en Excel

Para unir el nombre y los apellidos de todos los empleados en la columna D podemos seguir los siguientes pasos.

  1. En la celda D2 comenzaré a escribir la función CONCATENAR especificando el primer argumento:
    =CONCATENAR(A2,
  2. Como segundo argumento debo especificar un espacio vacío de manera que el Nombre y el Apellido paternos permanezcan separados en la nueva cadena de texto:
    =CONCATENAR(A2," ",
  3. Ahora puedo especificar el tercer y cuarto argumento que será el Apellido paterno con su respectivo espacio:
    =CONCATENAR(A2," ",B2," ",
  4. Y como último paso en el quinto argumento irá el Apellido materno:
    =CONCATENAR(A2," ",B2," ",C2)

La función CONCATENAR nos da el resultado esperado en la celda D2:

Resultado de la función CONCATENAR en Excel

Sólo resta copiar la fórmula hacia abajo para que Excel realice la concatenación de los demás nombres.

Copiar el resultado de la función CONCATENAR en Excel

68 pensamientos en “La función CONCATENAR en Excel

  1. grabiel

    Es una ejemplo muy didáctico. Gracias

    Responder
  2. oyuki cortes sabido

    que mal me dejaste en el examen. donde explicas que el maximo de argumentos que puedes especificar en una funcion que es de 255 y reprobe. los argumentos son de 30 segun mi maestra y las otras investigaciones que hice, y 255 caracteres osea letras y numeros.

    DAME UNA EXPLICACION GRACIAS

    Responder
    1. Moises Autor

      Oyuki, lamento escuchar lo de tu examen. La función CONCATENAR en Excel 2007 y en Excel 2010 acepta hasta 255 argumentos, de eso no hay ninguna duda, pero en Excel 2003 la función CONCATENAR aceptaba un máximo de 30 argumentos. Supongo que tu examen fue basado en Excel 2003.

      Responder
  3. DINO FERNANDEZ

    buenas tardes: sabes tus ejemplos son excelentes, crees que me puedes ayudar con este ejercicio quiero: en la celda A2 de texto TENGO los números 342. quiero contar en la celda A2 cuantos caracteres hay y si hay 3 caracteres colocar dos ceros en el lado izquierdo de los números 342 osea en la celda quedaría así: (00342) intente con la función concatenar y no me sale.

    podría ser una ayudadita si no seria mucha molestia.

    Responder
    1. Moisés Ortíz Autor

      Hola Dino, por lo que explicas en tu comentario me da la impresión de que será más sencillo hacerlo con un formato personalizado que intentando con la función CONCATENAR. Consulta el siguiente artículo para aprender un poco más sobre formatos personalizados:
      http://exceltotal.com/formato-personalizado-de-celdas-en-excel/

      Aplica el siguiente formato personalizado a las celda: 00000
      Este formato hará que siempre se completen los ceros faltantes a la izquierda de cualquier número hasta completar 5 dígitos.

      Responder
  4. Jose

    Buenas tardes, tengo una lista de datos separados por ; (punto y coma) cada uno de ellos, puedo importarlo a excel de manera que solo utilice una columna y me llene correlativamente las celdas hacia abajo (a1, a2, a3, etc.)hasta importar todos los datos ??

    Gracias.

    Responder
  5. DANIEL

    hola, tengo una duda en cuanto a esta función, es mas no se si sea aplicable para lo que necesito. DESEO EXTRAER VARIAS PALABRAS DE UNA CADENA DE TEXTO QUE ESTÁ EN UNA SOLO LINEA POSTERIOR MENTE ESTAS PALABRAS LAS DEBO UNIR PARA FORMAR UN TEXTO.

    Responder
  6. Victoria

    Se ha malogrado mi libreta de direcciones, y quiero recuperar mis contactos en un archivo excel para luego pasarlo a un .csv. De los correos enviados, estoy sacando mi lista de contactos pero los tengo bajo este formato separados por ; (punto y coma):
    contacto1@dominio1.com; contacto2@dominio2.com; contacto3@dominio3.com, etc.
    Quiero importarlo a excel y que figuren todos en una sola columna:
    contacto1@dominio1.com
    contacto2@dominio2.com
    contacto3@dominio3.com
    Me ayudas?
    Gracias
    Victoria

    Responder
    1. Moisés Ortíz Autor

      Hola Victoria, importa los correos a Excel para que queden en varias columnas, despúes copia toda la fila y pégala de nuevo utilizando el comando Pegar > Transponer para que se conviertan en una sola columna.

      Responder
  7. Luz Marina

    Hola.
    me ha parecido muy interesante y útil la función concatenar. Ahora bien, como se haría en excell la acción contraria a la concatenación, es decir, partiendo de una celda con datos separados por comas…. ¿cómo se podría llevar cada dato a una celda independiente ? Es posible esto ?. Por más que le doy vuelta no encuentro la forma.
    Muchas gracias de antemano

    Responder
      1. Alberto

        Gracias moi eres de los tipos que se le puede decir maestro ya que aquel hombre es el que enseña y tu enseñas y de una manera muy clara y sencilla gracias. saludos

        Responder
  8. WENCESLAO GARCIA

    Es satisfactorio encontrar personas como tú, ya que en las escuelas de computo le dan muchas vueltas, excelente aportación, saludos.

    Responder
  9. Edison Ospina

    Hola Moisés,

    Ya que se tiene un hilo sobre concatenar en excel, me surge la siguiente inquietud, tengo la formula ya establecida =CONCATENAR(D3;” “;E3;” “;B3;” “;C3), funciona perfecto, pero el punto es el siguiente: Cuando una celda no contiene informacion registrada y la formula me asigna espacio segun cada argumento ¿Como respetar la informacion y la formula y no asignar espacio por argumento sin caracteres registrados?

    No se si me hago entender, pero dejo un ejemplo de lo que pasa y lo que quiero:

    Ejm:

    1- Pasa: GABRIEL CORREA GONZALEZ CORREA GONZALEZ GABRIEL__

    Como indico en el ejemplo podemos ver que despues de nombre gabriel coloco el guion al piso que significa los dos espacios que se generan al concatenar, ya que un espacio esta indicado en la formula y el otro que seria donde inicia el proximo argumento.

    2- Quiero: Evitar que el espacio indicado en la formula (” “) se genere si el argumento no tiene informcion registrada en la celda.

    Gracias por la atencion, espero una respuesta pronto.

    Responder
    1. Moisés Ortíz Autor

      Hola Edison, considera la siguiente fórmula:
      =CONCATENAR(SI(ESBLANCO(D3);””;D3&” “); SI(ESBLANCO(E3);””;E3&” “))

      Solo lo hice para las celdas D3 y E3 pero repite la misma validación para las otras celdas.

      Responder
  10. jorge

    como puedo juntar de la A1 con la B1, hasta la A10 con la B10 sin tener que hacerlo de uno por uno

    Responder
  11. Gabriel González

    Muy buenas tardes… Disculpa quisiera saber si en un =buscar mi vector de resultado es un Hipervinculo como hacer para que en mi celda donde lo estoy buscando me aparezca también el Hipervinculo ??? Por favor si me podrías ayudar…

    Responder
  12. dario

    Moises, muy interesante tu articulo y el blog completo. he sacado muchas ayudas de él, y principalmente de este post.
    me interesaría poder hacer que, con la función CONCATENAR, todo lo concatenado en una celda, tenga saltos de linea, es posible? o debo hacer otro CONCATENAR en una celda posterior? lo pregunto porque me gustaría poder ingresar los datos (a traves de VBA) y las celdas resultantes formen un documento word, pero sin tantas celdas. es posible?
    Gracias!!!

    Responder
    1. Moisés Ortíz Autor

      Hola Dario, debes utilizar la función CARACTER(10). Por ejemplo, si quiero concatenar el valor de la celda A1 y A2 e insertar un salto de línea entre ambas puedo utilizar la siguiente fórmula:
      =CONCATENAR(A1,CARACTER(10),A2)

      Responder
  13. Paola S.

    Hola muy buen día me gustaría saber si hay alguna función como se pueda trasladar de números a letras una cantidad indicando la moneda y los decimales, gracias.

    Responder
  14. framirez

    podrias ayudarme a concatenar tres columnas , donde una de ellas es fecha , el problema que cuando concateno
    el formato de fecha desaparece y se convierte en numeros

    gracias

    Responder
    1. Moisés Ortíz Autor

      Hola Framirez, utiliza la función TEXTO para el valor de fecha de la siguiente manera:
      =CONCATENAR(A1,TEXTO(B1,”dd/mm/aa”))

      Para saber un poco más sobre la función TEXTO consulta el siguiente artículo:
      http://exceltotal.com/la-funcion-texto-en-excel/

      Responder
      1. Gustavo Rosas

        Muchas gracias por su ayuda

        Responder
  15. Monti

    Una pregunta: ¿ Que función utilizaría si solo necesito sacar las 2 primeras letras del primer nombre?. Gracias.

    Responder
    1. Moisés Ortíz Autor

      Hola Monti, puedes utilizar la función IZQUIERDA.

      Responder
  16. FISH

    QUIERO UTILIZAR LA FORMULA CONCATENAR PERO EN COLUNMA A1 TENGO APELLIDO PATERNO EN A2 EL MATERNO Y EL A3 NOMBRE, MACEDA TORRES LILIANA RAQUELCUNADO QUIERO JUNTAR TODO EL N0MBRE EN UNA SOLA COLUMNA ME APARECE UN GRAN ESPACIO ENTRE EL NOMBRE Y EL APELLIDO
    LILIANA RAQUEL MACEDA TORRES COMO QUITO ESE ESPACIO?

    Responder
    1. Moisés Ortíz Autor

      Hola Fish, es muy posible que el Nombre tenga varios espacios en blanco al final y es lo que ocasiona el espacios entre Nombre y Apellido. Utiliza la función CONCATENAR pero a cada celda aplica también la función ESPACIOS para remover dichos espacios en blanco, por ejemplo:
      =CONCATENAR(ESPACIOS(A1), ” “, ESPACIOS(A2))

      Responder
  17. David

    Excelente tu aporte muy sencillo y claro como dicen en el comentario anterior eres un maestro y agrego con mucha facilidad para transmitir y compartir tus conocimientos…Gracias

    Responder
  18. DAVID

    Que tal Moises, excelente!!!!!. Tengo que tener una celda con un numero y letra combinado ejemplo: 555w, pero necesito utilizar esta celda para sacar porcentajes. El problema que al concatenarla con las funciones CONCATENATE o & si me las junta pero ya no puedo utilzar la celda como valor para los porcentajes… Me pudiese ayudar gracias y saludos.

    Responder
    1. Moisés Ortíz Autor

      Hola David, al concatenar un número con un carácter obtenemos como resultado una cadena de texto y ya no es posible utilizarlo para cálculos numéricos. Si en todos los números debes mostrar el carácter “w”, entonces es mejor utilizar el formato personalizado de manera que la celda no deje de ser un número. Te dejo un artículo que habla un poco más al respecto:
      http://exceltotal.com/formato-personalizado-de-celdas-en-excel/

      Responder
  19. Rochy

    Hola Moises, excelente tu pagina. Quisiera saber cual seria la formula para determnar en una columna de valores cual seria el puesto 1 el 2, el 3 y asi sucesivamente… Gracias

    Responder
  20. Miguel Ángel Ramos

    Hola, buenas tardes, después de concatenar en una celda los resultados de varias celdas, preciso que la celda donde se produce la concatenación me sirva para aplicar una función buscarv. La cuestión es que no funciona. Ocurre lo mismo si intento copiar el resultado en otra celda. Existe una solución para esta necesidad???.
    Gracias anticipadas.

    Responder
    1. Moisés Ortíz Autor

      Hola Miguel, el problema debe ser otro. La función BUSCARV no tiene problema alguno en buscar sobre celdas que tienen valores concatenados de otras celdas.
      En la mayoría de los casos se debe al formato de la celda, a veces concatenamos números que terminan con formato de texto, pero cuando los buscamos lo hacemos como si fueran números y por lo tanto la función BUSCARV no los encuentra.

      Responder
      1. Marco

        Hola Moisés, como se soluciona eso de que una concatenación de solo números me entregue un resultado en texto, ya que eso específicamente no me permite hacer el buscarv que requiero.

        Gracias

        Responder
        1. Moisés Ortíz Autor

          Hola Marco, si la concatenación es solo de números, entonces bastará con que multipliques el resultado por 1 y Excel convertirá el resultado en un valor numérico.

          Responder
  21. jimmy Barrientos

    Hola Moises, gracias por estos aportes que son de mucha ayuda, como puedo hacer para concatenar dos celdas que contengan fechas y para que en los dos me muestre las fechas y no los numero, para que diga el siguiente texto “semana del 25/05/2013 al 30/05/2013″
    gracias por tu ayuda!!
    saludos y bendiciones.

    Responder
    1. Moisés Ortíz Autor

      Hola Jimmy, debes combinar la función CONCATENAR con la función TEXTO de la siguiente manera:
      =CONCATENAR(“Semana del “, TEXTO(A1,”dd/mm/aaaa”), ” al “, TEXTO(B1,”dd/mm/aaaa”))

      Estoy suponiendo que las celdas A1 y B1 contienen las fechas.

      Responder
  22. Karla

    Buen día me gustaría saber como pudo usar la función MAYUSC en en texto concatenado.
    Ya lo intente pero no se como indicarle que quiero que realice ambas funciones en una misma celda.

    Responder
    1. Moisés Ortíz Autor

      Hola Karla, te recomiendo utilizar la función CONCATENAR dentro de la función MAYUSC, por ejemplo:
      =MAYUSC(CONCATENAR(A1,A2,A3))

      Responder
  23. Ricardo Th

    Estimado Moises, primero que nada gracias por el tutorial. Tengo Excel 2007 y queria saber si se puede realizar la accion contraria al concatenado. El problema es que me llegan planillas de datos en PDF y al pasarlos a Excel queda toda la fila en una sola celda. Gracias

    Responder
  24. ALEXANDRA

    HOLA , DESEO SABER COMO PUEDO UNIR LAS DOS PRIMERAS LETRAS DE CELDAS DIFERENTES GRACIAS

    Responder
    1. Moisés Ortíz Autor

      Hola Alexandra, puedes utilizar una fórmula como la siguiente:
      =CONCATENAR(IZQUIERDA(A1,1),IZQUIERDA(B1,1))

      Responder
  25. Pilar

    ¡Hola! Mi comentario es un poco fuera de tiempo ya que contesto a una consulta del 25 de Febrero; cuando comprobé la función CONCATENAR lo hice con seis nombres en rango A3:C8; pues bien, solo metí en la función A3:C3 y después arrastré; me salió. Gracias, Moisés, por enseñarnos; lo haces magníficamente bien; un abrazo.

    Responder
  26. JENIFER

    Buenos dias
    Estoy utilizando la funcion concatenar pero me quedan todas las palabras pegadas porque?
    jeniferrodriguezmontoya

    que caracteres debo utilizar para que quede separada cada palabra?
    Agradezco una pronta respuesta

    Responder
    1. Moisés Ortíz Autor

      Hola Jenifer, es necesario que indiques el espacio en blanco (” “) entre las palabras porque la función CONCATENAR no lo hará por ti. Por ejemplo:
      =CONTACTENAR(A1, ” “, B1, ” “, C1)

      Responder
  27. Diamar

    Hola Moisés

    Tu ayuda siempre es muy valiosa. Quisiera saber si es posible conservar el estilo de una de las celdas. Estoy trabajando una base de datos en la que una celda contiene la información en cursiva y necesito que al concatenarlas este estilo se conserve.

    Agradezco de antemano tu colaboración al respecto.

    Responder
    1. Moisés Ortíz Autor

      Hola Diamar, no es posible hacerlo con fórmulas ya que ninguna función de Excel copia el estilo o formato.
      Solo queda hacerlo manual o crear una macro que copie el estilo.

      Responder
  28. Pablo Zeballo

    Buenas, tengo la siguiente duda. Estoy armando unos libros contables de distintas compañías, son para registro nada más. Y quisiera saber como hacer para después de concatenar poder eliminar las columnas concatenadas ya que cuando copio en el formato base me copia todo, aún ocultando las columnas. Gracias

    Responder
    1. Moisés Ortíz Autor

      Hola Pablo, ocultar las columnas no tendrá efecto alguno. Por otro lado, las columnas que utilizan la función CONCATENAR siempre dependerán de las celdas originales para mostrar su valor. Si eliminas dichas celdas, entonces la función CONCATENAR mostrará un error. Lo que te sugiero hacer es copiar las celdas que utilizan la función CONCATENAR y pegarlas en otro rango pero utilizando el “Pegado especial” y eligiendo la opción “Valores”. Eso pegará solamente las cadenas de texto y removerá cualquier dependencia de las celdas originales.

      Responder
  29. Gilberto

    Hola Moisés, no se si quepa mi comentario en este ejercicio, tengo una información donde en la “columna A”, “fila 1″, tengo un código (A01) y en la “columna B”, tengo un texto, pero dividido en 3 filas, osea “Columna B”, “filas 1-3″ (en la columna A donde esta el código, en la fila 2 y 3, se encuentra en blanco) y así se me repite en toda la hoja con diferentes códigos y textos, existe alguna función que me ayude a concatenar el texto que esta en varias filas, en uno solo?, para que quede en una fila, al igual que el código de la columna A?, espero haber sido claro con mi pregunta y problema, agradezco tu atención.

    Responder
    1. Moisés Ortíz Autor

      Hola Gilberto, si en la celda C1 coloco la siguiente fórmula, habré concatenado el texto de varias filas en una sola:
      =CONCATENAR(B1,B2,B3)

      Pero la verdad no estoy seguro de que eso sea lo que preguntas. Por otro lado, si te refieres a una función que además de concatenar sea capaz de “eliminar” las celdas en blanco, la respuesta es NO.
      Dada la estructura de los datos, lo más conveniente sería crear una macro ya que además de concatenar podrás eliminar los espacios en blanco.

      Responder
  30. José Luis

    Hola Moisés

    Estoy uniendo cuatro columnas de una hoja Excel con la siguiente información de cuenta bancarias:

    En la primera columna esta el código del banco.
    En la según columna está el código de la Oficina.
    En la tercera los dígitos de control de la cuenta.
    y en la cuarta columna los diez dígitos de la cuenta.

    El problema es que aunque yo he añadido los ceros a la izquierda que faltaban en cada una de esas columnas, no consigo concatenar las cuatro columnas sin perder los ceros añadidos a la izquierda en cada una de ellas.

    Espero podáis ayudarme, gracias.

    Responder
  31. Juan Carlos

    Como hago para copiar la columna donde realiza la operacion de concatenar, al borrar las columnas donde se asocian el resultado se borrar no me srive ocultar las columnas
    Gracias por el apoyo

    Responder
    1. Moisés Ortíz Autor

      Hola Juan Carlos, después de realizar la concatenación debes copiar dicha columna y pegarla con la opción Pegado Especial > Valores. Eso hará que se remueva cualquier referencias a las celdas originales y entonces podrás borrarlas sin que afecten el resultado.

      Responder
  32. Manuel

    Cordial saludo

    Siempre he dicho que esta página es la mejor y enseña mucho y bien Gracias Moises, en esta ocasión, quisiera saber si al utilizar la función CONCATENAR, puedo poner en negrita cierto Texto al final de la concatenación. Me explico, si concateno =CONCATENAR(A1,B1,C1,D1) y quiere que el texto de la celda C1 quede al final de la concatenación en negrita
    Agradezco en lo que me puedas ayudar

    Responder
    1. Moisés Ortíz Autor

      Hola Manuel, ninguna función de Excel puede afectar el estilo y formato de las celdas, así que no podrás hacer eso con la función CONCATENAR. Eso solamente lo podrías lograr con un macro.

      Responder
  33. mcinpapr

    Hola buenas tardes, Muchas felicidades por el blog, es de los mejores que he podido encontrar y sobre todo muy bien explicados y con ejemplos simples para cualquier mortal que apenas esté aprendiendo. Cambiando de tema, necesito hacer una pregunta.
    ¿Sabes si existe alguna forma, en Excel 2010, de hacer funciones o fórmulas dinámicas?
    Lo que intento decir es por elemplo en L1 pongo una lista de los Meses del año = ["Enero","Febrero",...] por medio de la validación de Datos, de tal modo que cuando selecciono la celda me abre un combo (lista desplegable) mostrándome la lista y si yo selecciono por ejemplo “MARZO” me gustaría que la Celda A2 tomara el valor seleccionado y fuera a buscar un dato a la Hoja MARZO. es decir, si tengo una formula en A2 = CONCATENAR(“=”, $L$1, “!F4″) QUE FUERA A BUSCAR EN LA HOJA QUE YO HAYA SELECCIONADO. EN LUGAR DE ESO POR OBVIAS RAZONES ME LO DEJA COMO TEXTO (“=MARZO!F4″). SE LE PUEDE DECIR DE ALGÚN MODO A EXCEL QUE NO LO CONSIDERE COMO TEXTO Y SI COMO UNA FÓRMULA???
    AGRADEZCO MUCHO DE ANTEMANO TU AYUDA…

    Responder
  34. zuly paez

    hola oye tengo una inquietud tengo en dos celdas distitnas dos valores (no texto) no se si se pueda concatenar independientemente si es numero o texto de no ser asi me gustaria que me colaboraras con alguna formula que me pueda unir las dos celdas con valores diferentes sin sumar….gracias

    Responder
    1. Moisés Ortíz Autor

      Hola zuly, la función CONCATENAR jamás realizará una suma y no importa si mezclas números con texto, a final de cuentas siempre tendrás como resultado una cadena de texto.

      Responder

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>