function

ARRAYTOTEXT

Todo sobre la función ARRAYTOTEXT en Excel

La función MATRIZATEXTO, conocida como ARRAYTOTEXT en versiones de Excel en inglés, se utiliza para convertir un rango o una matriz de celdas en una cadena de texto. Esta función es especialmente útil cuando se trabaja con funciones de matriz dinámica, ya que permite presentar los resultados de una matriz en una única celda de forma legible.

Devuelve una representación textual de la matriz, con elementos de la misma fila separados por comas y las filas separadas por puntos y comas, todo ello encerrado entre llaves {}.

Sintaxis

=MATRIZATEXTO(matriz, [formato])

La función MATRIZATEXTO tiene los siguientes argumentos:

  • matriz: La matriz o rango de celdas que se desea convertir a texto. Puede ser un rango (p. ej., A1:C3), una constante de matriz (p. ej., {1,2;3,4}) o el resultado de otra fórmula que devuelva una matriz. Obligatorio.
  • formato: Determina el formato del texto devuelto. Opcional.
    • 0 – Conciso (valor predeterminado): El texto devuelto es fácil de leer y no incluye comillas para los valores de texto. Los números no se formatean. Ejemplo: {rojo,verde,azul;1,2,3}.
    • 1 – Estricto: Devuelve un formato que puede ser interpretado por Excel. Incluye comillas en los valores de texto, valores booleanos (VERDADERO/FALSO) y errores. Ejemplo: {"rojo","verde","azul";1,2,3}.

Ejemplos

Ejemplo 1: Convertir un rango numérico (formato conciso)

Convierte un rango de celdas numérico en una cadena de texto usando el formato predeterminado.

A B
1 10 20
2 30 40
=MATRIZATEXTO(A1:B2)

Resultado esperado: {10,20;30,40}

Ejemplo 2: Convertir un rango con texto (formato estricto)

Convierte un rango que contiene texto y números usando el formato estricto, que añade comillas a los valores de texto.

A B
1 España 1
2 Francia 2
=MATRIZATEXTO(A1:B2, 1)

Resultado esperado: {"España",1;"Francia",2}

Ejemplo 3: Uso con una constante de matriz

Se puede usar directamente con una matriz definida en la propia fórmula.

=MATRIZATEXTO({"Lunes","Martes";"Miércoles","Jueves"}, 1)

Resultado esperado: {"Lunes","Martes";"Miércoles","Jueves"}

Ejemplo 4: Combinación con la función FILTRAR

Este ejemplo muestra cómo se puede combinar con otras funciones de matriz dinámica. Primero, se filtran los productos con ventas superiores a 500 y, a continuación, MATRIZATEXTO convierte el resultado en una única cadena de texto.

A B
1 Producto Ventas
2 Portátil 750
3 Teclado 120
4 Monitor 800
5 Ratón 95
=MATRIZATEXTO(FILTRAR(A2:A5, B2:B5>500))

Resultado esperado: {Portátil;Monitor}

Observaciones

La función MATRIZATEXTO es especialmente útil para depurar fórmulas que trabajan con matrices, permitiendo visualizar el resultado completo de una matriz en una sola celda.

Errores comunes

  • #¡VALOR!: Ocurre si el argumento formato no es 0 ni 1.
  • #NOMBRE?: Ocurre si el nombre de la función se ha escrito incorrectamente o si estás utilizando una versión de Excel que no incluye esta función.
  • #CALC!: Puede aparecer si la matriz de entrada está vacía. Por ejemplo, si se usa con una función FILTRAR que no devuelve ningún resultado.

Disponibilidad por versión de Excel

Esta función está disponible para usuarios de Microsoft 365, Excel para la Web y Excel para Mac (Microsoft 365).

Compatibilidad

Software Compatibilidad Notas Alternativa
Microsoft Excel ✔️ Disponible solo en versiones recientes (Microsoft 365).
Google Sheets No existe una función equivalente directa que reproduzca la sintaxis de llaves {}. Para concatenar valores de una matriz en una cadena se puede usar UNIRCADENAS (TEXTJOIN) o una combinación de otras funciones.
LibreOffice Calc No disponible. Se puede usar UNIRCADENAS (TEXTJOIN) para unir los elementos de un rango en una cadena de texto, aunque el formato de salida es diferente.
OpenOffice Calc No disponible. No disponible.
WPS Office Spreadsheets No disponible. No disponible.
Apple Numbers No disponible. No disponible.

Funciones Relacionadas

  • UNIRCADENAS: Concatena una lista o rango de cadenas de texto usando un delimitador. Es una excelente alternativa cuando solo se necesita unir los valores y no la estructura de la matriz.
  • VALORATEXTO: Convierte cualquier valor (no solo matrices) a una representación textual.
  • CONCAT: Combina el texto de múltiples rangos y/o cadenas, pero no proporciona un delimitador.

Ver también...