miércoles, 17 de junio de 2020

EXCEL: Convertir cadena en matriz

Excel formula: Convert string to array

Fórmula genérica

{=EXTRAE(string,FILA(INDIRECTO("1:"&LARGO(string))),1)}

Explicación

Para convertir una cadena en una matriz que contiene un elemento para cada letra, puede usar una fórmula de matriz basada en las funciones EXTRAE, FILA, LARGO e INDIRECTO. Esto a veces puede ser útil dentro de otras fórmulas que manipulan texto a nivel de caracteres.

En el ejemplo que se muestra, la fórmula en C5 es:

{=EXTRAE(B5,FILA(INDIRECTO("1:"&LARGO(B5))),1)}

Nota: esta es una fórmula de matriz y debe ingresarse con control + shift + enter.

Cómo funciona esta fórmula

Trabajando de adentro hacia afuera, la función LARGO calcula la longitud de la cadena, y esto se une mediante concatenación a "1:", creando un rango de texto como este: "1: 3"

Este texto se pasa a INDIRECTO, que evalúa el texto como referencia y devuelve el resultado a la función FILA. La función FILA devuelve las filas contenidas en la referencia en una matriz de números como este:

{1;2;3}

Observe que tenemos un número para cada letra en el texto original.

Esta matriz entra en la función EXTRAE, para el argumento start_num. El texto proviene de la columna B, y el número de caracteres está codificado como 1

Finalmente, con múltiples números de inicio, EXTRAE devuelve múltiples resultados en una matriz como esta.

{"R";"e";"d"}

Comentarios en Facebook


0 comentarios:

Copyright © 2021 TRUJILLOSOFT