BlogExcel

Función CHOOSECOLS de Excel para obtener columnas de una matriz o rango

Este tutorial le presentará una nueva función de matriz dinámica de Excel 365 llamada CHOOSECOLS y le mostrará cómo puede usarla para extraer columnas específicas de una matriz.

Imagine trabajar con un conjunto de datos de cientos o miles de columnas. Obviamente, algunas columnas son más importantes que otras y, por supuesto, es posible que desee leer sus datos primero. Excel 365 ofrece una función perfecta para el trabajo que puede recuperar instantáneamente detalles específicos de una matriz para que pueda concentrarse en la información más relevante.

Función de Excel ELECCIONES

La función CHOOSECOLS en Excel está diseñada para devolver las columnas especificadas de una matriz o rango.

La sintaxis incluye los siguientes argumentos:

CHOOSECOLS(matriz, col_num1, [col_num2]…)

Dónde:

Matriz (obligatorio): la matriz o el rango de origen.

Col_num1 (obligatorio): un número entero que especifica la primera columna que se devolverá.

col_num2… (opcional) – números de índice de columnas adicionales para devolver.

Y así es como se vería la función CHOOSECOLS en su Excel: Función de Excel ELECCIONES

Disponibilidad de la función CHOOSECOLS

La función CHOOSECOLS está disponible actualmente en Excel para Microsoft 365 (Windows y Mac) y Excel para la web.

Consejo. Para extraer algunas filas de un rango o una matriz, la función CHOOSEROWS puede ser útil.

Cómo usar la función CHOOSECOLS en Excel

CHOOSECOLS es una función de matriz dinámica, por lo que maneja las matrices de forma nativa. La fórmula debe ingresarse en una sola celda, la celda superior izquierda del rango de destino, y se desborda automáticamente en tantas columnas como se especifican sus argumentos y tantas filas como haya en la matriz original. El resultado es una matriz dinámica única, que se denomina rango de drenaje.

Para crear una fórmula CHOOSECOLS en Excel, esto es lo que debe hacer:

  1. Para matrizproporcionar un rango de celdas o una matriz de valores.
  2. Para col_num, proporcione un entero positivo o negativo que indique qué columna devolver. Un número positivo saca una columna correspondiente del lado izquierdo de la matriz, un número negativo, del lado derecho de la matriz. Para obtener más columnas, puede definir sus números en argumentos separados o en un solo argumento en forma de constante de matriz.

Por ejemplo, para obtener las columnas 2, 3 y 4 del rango A4:E19, la fórmula es:

=CHOOSECOLS(A4:E19, 2, 3, 4)

Alternativamente, puede usar una constante de matriz horizontal como {2,3,4} o una constante de matriz vertical como {2;3;4} para especificar los números de columna:

=CHOOSECOLS(A4:E19, {2,3,4})

=CHOOSECOLS(A4:E19, {2;3;4})

Las tres fórmulas anteriores darán el mismo resultado: Use una fórmula CHOOSECOLS en Excel para devolver columnas específicas.

En algunas situaciones, puede que le resulte más conveniente ingresar los números de columna en algunas celdas y luego hacer referencia a esas celdas individualmente o proporcionar una sola referencia de rango. P.ej:

=CHOOSECOLS(A4:E19, G4, H4, I4)

=CHOOSECOLS(A4:E19, G4:I4)

Este enfoque le brinda más flexibilidad: para extraer cualquier otra columna, simplemente ingrese diferentes números en las celdas predefinidas sin tener que cambiar la fórmula en sí. Obtenga columnas basadas en números en celdas predefinidas.

Ahora que conoce lo esencial, profundicemos un poco más y exploremos una fórmula CHOOSECOLS un poco más compleja para manejar escenarios específicos.

Obtenga las últimas columnas en el rango

Para devolver una o más columnas desde el final de un rango, proporcione números negativos para col_num argumentos Esto hará que la función comience a contar las columnas del lado derecho de la matriz.

Por ejemplo, para obtener la última columna en el rango A4:D13, use esta fórmula:

=CHOOSECOLS(A4:E19, -1)

Para extraer las dos últimas columnas, use esto:

=CHOOSECOLS(A4:E19, -2, -1)

Para devolver las últimas 2 columnas en orden inverso, invierta el orden de las columnas col_num argumentos como este:

=CHOOSECOLS(A4:E19, -1, -2) Extraiga las últimas 2 columnas de una matriz.

Obtenga todas las demás columnas en Excel

Para extraer cualquier otra columna de un rango dado, puede usar CHOOSECOLS junto con varias otras funciones. A continuación se muestran dos versiones de la fórmula para extraer columnas pares e impares.

Obtener columnas impares (como 1, 3, 5, etc.), la fórmula es:

=CHOOSECOLS(A4:E19, SEQUENCE(ROUNDUP(COLUMNS(A4:E19)/2, 0), 1, 1, 2))

Regresar incluso columnas (como 2, 4, 6, etc.), la fórmula tiene la siguiente forma:

=CHOOSECOLS(A4:E19, SEQUENCE(ROUNDDOWN(COLUMNS(A4:E19)/2, 0), 1, 2, 2))

La siguiente captura de pantalla muestra la primera fórmula en acción: Obtenga todas las demás columnas en Excel.

Cómo funciona esta fórmula:

Breve explicación: La función CHOOSECOLS devuelve columnas alternas en función de una matriz de números secuenciales pares o impares producidos por la función SEQUENCE.

Un desglose detallado de la fórmula.:

El primer paso es calcular cuántas columnas devolver. Para ello, utilizamos una de estas fórmulas:

ROUNDUP(COLUMNS(A4:E19)/2, 0)

o

ROUNDDOWN(COLUMNS(A4:E19)/2, 0)

COLUMNS cuenta el número total de columnas en el rango de origen. Divide ese número por 2 y luego, dependiendo de si estás extrayendo columnas pares o impares, redondea el cociente hacia arriba o hacia abajo usando ROUNDUP o ROUNDDOWN. Se requiere el redondeo si el rango de origen contiene un número impar de columnas, lo que deja un resto cuando se divide por 2.

Nuestro rango de fuentes tiene 5 columnas. Entonces, para columnas impares REDONDEAR (5/2, 0) devuelve 3, mientras que para columnas pares REDONDEAR (5/2, 0) devuelve 2.

El número devuelto se le da al primer argumento (FILA) de la función SECUENCIA.

Para las columnas impares, obtenemos:

SEQUENCE(3, 1, 1, 2)

Esta fórmula de SECUENCIA genera una matriz de números que consta de 3 filas y 1 columna, comenzando con 1 y aumentando en 2, que es {1;3;5}.

Para columnas pares, tenemos:

SEQUENCE(2, 1, 2, 2)

En este caso, SEQUENCE produce una matriz de números que consta de 2 filas y 1 columna, comenzando en 2 y aumentando en 2, que es {2;4}.

La matriz anterior va a col_num1 argumento CHOOSECOLS y obtener el resultado deseado.

Voltear una matriz horizontalmente en Excel

Para invertir el orden de las columnas en una matriz de izquierda a derecha, puede usar las funciones CHOOSECOLS, SEQUENCE y COLUMNS juntas de esta manera:

=CHOOSECOLS(A4:D19, SEQUENCE(COLUMNS(A4:D19)) *-1)

Como resultado, el rango original se voltea horizontalmente, como se muestra en la imagen a continuación: Invierta el orden de las columnas en el rango de izquierda a derecha.

Cómo funciona esta fórmula:

Aquí, usamos la función SEQUENCE para generar una matriz que contiene tantos números secuenciales como columnas hay en la matriz de origen. Para esto, anidamos COLUMNAS(A4:D13) en FILA argumento:

SEQUENCE(COLUMNS(A4:D19))

Los otros argumentos (columnas, comenzar, Escenario) se omiten, por lo que el valor predeterminado es 1. Como resultado, SEQUENCE produce una matriz de números secuenciales como 1, 2, 3, …, n, donde norte es el índice de la última columna de la matriz. Para forzar a la función CHOOSECOLS a contar columnas de derecha a izquierda, multiplicamos cada elemento de la secuencia generada por -1. Como resultado obtenemos una matriz de números negativos como {-1;-2;-3} que va a col_num argumento CHOOSECOLS, diciéndole que devuelva las columnas correspondientes en el lado derecho de la matriz:

CHOOSECOLS(A4:D19, {-1;-2;-3;-4})

Extraer columnas basadas en cadenas de números

En la situación en la que los números de índice de la columna de destino se proporcionan como una cadena de texto, puede usar la función TEXTSPLIT para dividir la cadena por un delimitador dado y luego pasar la matriz de números resultante a CHOOSECOLS.

Suponga que los números de columna se enumeran en la celda H3, separados por comas y espacios. Para obtener las columnas de interés, utilice esta fórmula:

=CHOOSECOLS(A4:E19, TEXTSPLIT(H3, ", ") *1) Obtenga columnas específicas basadas en una cadena que contiene números.

Cómo funciona esta fórmula:

Primero, divida una cadena con un delimitador dado (una coma y un espacio en nuestro caso):

TEXTSPLIT(H3, ", ")

Un resultado intermedio es una matriz de valores de texto, como {«1″,»4″,»5»}. Para convertir texto en números, multiplique los elementos de la matriz por 1 o realice cualquier otra operación matemática que no cambie los valores originales.

TEXTSPLIT(H3, ", ") *1

Esto produce una matriz de valores numéricos {1,4,5} que la función CHOOSECOLS puede procesar y obtendrá el resultado que está buscando:

CHOOSECOLS(A4:E19, {1,4,5})

Extraer columnas de múltiples rangos

Para obtener columnas específicas de varios rangos no contiguos, primero combine todos los rangos en uno usando la función VSTACK, luego maneje el rango combinado con CHOOSECOLS.

Por ejemplo, para devolver las columnas 1 y 3 de los rangos A4:D8, A12:D15 y A19:D21, la fórmula es:

=CHOOSECOLS(VSTACK(A4:D8, A12:D15, A19:D21), 1, 3) Obtenga columnas específicas de múltiples rangos a la vez.

La función CHOOSECOLS no funciona

Si la fórmula CHOOSECOLS arroja un error, lo más probable es que sea uno de los siguientes.

#¡VALOR! error

Aparece si el valor absoluto de cualquier col_num el argumento es cero o mayor que el número total de columnas en la matriz a la que se hace referencia.

#¿NOMBRE? error

Ocurre si el nombre de la función está mal escrito o si la función no está disponible en su versión de Excel. CHOOSECOLS actualmente solo es compatible con Excel 365 y Excel para la Web. Para obtener más detalles, consulte Cómo corregir el error #NOMBRE en Excel.

#SPIL! error

Ocurre cuando algo impide que la fórmula propague sus resultados a las celdas vecinas. Para solucionarlo, simplemente despeje las celdas que obstruyen. Para obtener más información, consulte Cómo solucionar #DERRAME. error en excel.

Así es como se usa la función CHOOSECOLS en Excel para devolver columnas específicas de un rango o matriz. ¡Gracias por leernos y nos vemos en nuestro blog la próxima semana!

Libro de ejercicios para descargar.

Fórmula de Excel CHOOSECOLS – ejemplos (archivo .xlsx)

También te puede interesar

Publicaciones relacionadas

Deja una respuesta

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

Botón volver arriba
Cerrar