John notó que Excel proporciona tres formas de concatenar valores: usando el operador &, la función CONCATENAR y la nueva función CONCAT.

Se pregunta sobre las diferencias entre estas diversas formas de juntar valores y cuál es la mejor para usar.

En realidad, hay otra función nueva (TEXTJOIN) que también podría usarse para concatenar valores. Esto significa que Excel ahora tiene cuatro formas diferentes de juntar valores en una cadena.

Sin embargo, antes de explicar las diferencias, puede ser mejor definir qué se entiende por «nuevo» cuando, en este caso, se habla de «nuevas funciones».

Específicamente, significa que las nuevas funciones están disponibles para aquellos que usan Excel 2016 si esa versión de Excel se basa en una suscripción a Office 365. Esto significa que si tiene Excel 2016 que es independiente, no tendrá acceso ni a CONCAT ni a TEXTJOIN. Solo los obtienes con la suscripción. Si tiene una suscripción a Office 365 y no puede usar CONCAT o TEXTJOIN, querrá buscar actualizaciones y asegurarse de estar actualizado a la última versión; estas dos funciones están disponibles desde febrero de 2016.

Ahora, para los métodos tradicionales de combinación de valores: hay muy poca diferencia entre usar el operador & o la función CONCATENAR. La mayor diferencia teórica es que la función CONCATENAR tiene un límite de 255 parámetros que se pueden usar con ella, y el operador & no. (Digo «teórico» porque tienes que hacer MUCHO trabajo para usar 255 parámetros con CONCATENAR). Personalmente, prefiero usar el operador & por la única razón que toma menos tiempo escribir y es más claro para mí que el enfoque de función.

La función CONCAT hace que los enfoques tradicionales sean mejores, por así decirlo: le permite usar rangos como parámetros. Esto es realmente genial; considere el siguiente uso:

=A1 & A2 & A3 & A4

Bastante sencillo, ¿verdad? Bueno, con CONCAT podrías simplificar a esto:

=CONCAT(A1:A4)

Se vuelve aún mejor si desea utilizar un área rectangular. La forma antigua es esta:

=A1 & A2 & A3 & A4 & B1 & B2 & B3 & B4

He aquí cómo hacerlo con CONCAT:

=CONCAT(A1:A4, B1:B4)

Si modificó esto un poco, puede combinar fácilmente los valores por fila dentro del rango:

=CONCAT(A1:B4)

Esto es equivalente a lo siguiente:

=A1 & B1 & A2 & B2 & A3 & B3 & A4 & B4

Ahora, agreguemos la función TEXTJOIN a la mezcla. Esta función agrega dos parámetros requeridos antes de la lista de celdas o rangos de celdas que desea concatenar. Estos parámetros le permiten agregar un delimitador e indicar si las celdas vacías deben ignorarse. Aquí tienes un ejemplo:

=TEXTJOIN(" ", TRUE, A1:B4)

En este uso, la función agrega automáticamente un carácter de espacio entre cada valor de celda que concatena. El delimitador no se limita a un solo carácter; podría utilizar varios caracteres. Seguro que es mejor que la antigua forma de hacerlo:

=A1 & " " & B1 & " " & A2 & " " & B2 & " " & A3 & " " & B3 & " " & A4 & " " & B4

El segundo parámetro TEXTJOIN, establecido en TRUE en este ejemplo, indica si desea o no omitir celdas en blanco en los rangos que está concatenando. Esto es realmente imposible de hacer con cualquier otro enfoque de concatenación, y hace que la función TEXTJOIN sea muy poderosa. Además, elimina los «delimitadores dobles», ya que realmente solo incluye un delimitador entre cada valor que agrega a la cadena resultante.

¿Cuál de estos cuatro métodos debería utilizar para concatenar sus valores?

Depende de usted, pero si está desarrollando libros de trabajo que serán utilizados por aquellos con versiones anteriores de Excel, le sugiero que se ciña al operador & o la función CONCATENAR. Sin embargo, si está bastante seguro de que aquellos que usan el libro de trabajo siempre tendrán la última versión de Excel, entonces pasaría por alto CONCAT y usaría la función TEXTJOIN casi por completo.

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (4629) se aplica a Microsoft Excel 2007, 2010, 2013 y 2016.