ELEGIRCOLS
Selecciona las columnas que necesitas de una matriz y organízalas en el orden que quieras, sin modificar los datos originales.
Qué hace
Selecciona únicamente las columnas que necesitas
ELEGIRCOLS devuelve columnas específicas de una matriz. Puedes seleccionar una o varias, cambiar su orden e incluso repetir columnas dentro del resultado.
Es especialmente útil cuando trabajas con bases de datos que contienen muchas columnas, pero necesitas construir un reporte con solamente algunas de ellas.
No modifica los datos originales
ELEGIRCOLS genera una nueva matriz dinámica. La tabla de origen conserva sus columnas y su estructura original.
Sintaxis
Cómo se construye ELEGIRCOLS
=ELEGIRCOLS(matriz,columna1,[columna2],...)matrizObligatorioEs el rango o matriz de donde queremos seleccionar las columnas.
columna1ObligatorioEs el número de la primera columna que queremos recuperar. La numeración comienza en 1, tomando como referencia la matriz proporcionada.
[columna2], ...OpcionalPermite seleccionar columnas adicionales y especificar el orden en el que aparecerán.
¿Cómo se numeran las columnas?
1
UUID
2
Proveedor
3
Importe
Estos números son posiciones relativas dentro de la matriz. No representan necesariamente las letras de las columnas de la hoja de Excel.
Ejemplos
Seleccionar columnas de una base de datos
Utilizaremos una base sencilla de facturas con tres columnas: UUID, Proveedor e Importe.
| UUID | Proveedor | Importe |
|---|---|---|
| CFDI-001 | Aceros del Golfo | $15,200 |
| CFDI-002 | Ferretería Central | $8,450 |
| CFDI-003 | Materiales del Norte | $23,800 |
| CFDI-004 | CEMEX | $145,000 |
| CFDI-005 | Pinturas del Golfo | $6,780 |
Utilizando un rango normal
Supongamos que los datos se encuentran en A2:C6 y necesitamos únicamente el UUID y el importe.
=ELEGIRCOLS(A2:C6,1,3)A2:C6Es el rango de datos original.
1Selecciona la primera columna: UUID.
3Selecciona la tercera columna: Importe.
Resultado esperado
| UUID | Importe |
|---|---|
| CFDI-001 | $15,200 |
| CFDI-002 | $8,450 |
| CFDI-003 | $23,800 |
| CFDI-004 | $145,000 |
| CFDI-005 | $6,780 |
Utilizando una tabla de Excel
Si convertimos el rango en una tabla llamada tblSistema, podemos trabajar directamente con su referencia estructurada.
=ELEGIRCOLS(tblSistema,1,3)tblSistemaHace referencia a todos los datos de la tabla.
1Selecciona la columna UUID.
3Selecciona la columna Importe.
Ventajas de utilizar una tabla
La referencia tblSistema se amplía automáticamente cuando agregamos nuevos registros, por lo que ELEGIRCOLS puede incorporar las nuevas filas sin modificar la fórmula.
Sin embargo, recuerda que los números indican posiciones. Si cambias el orden de las columnas originales, revisa los índices utilizados.
Otra posibilidad
También puedes cambiar el orden de las columnas
ELEGIRCOLS no se limita a eliminar columnas del resultado. También permite reorganizarlas.
Si queremos mostrar primero el proveedor, después el UUID y finalmente el importe, utilizamos:
=ELEGIRCOLS(tblSistema,2,1,3)2Primero devuelve la columna Proveedor.
1Después devuelve la columna UUID.
3Finalmente devuelve la columna Importe.
Resultado
| Proveedor | UUID | Importe |
|---|---|---|
| Aceros del Golfo | CFDI-001 | $15,200 |
| Ferretería Central | CFDI-002 | $8,450 |
| Materiales del Norte | CFDI-003 | $23,800 |
| CEMEX | CFDI-004 | $145,000 |
| Pinturas del Golfo | CFDI-005 | $6,780 |
Aplicación real
ELEGIRCOLS en la conciliación de facturas
En nuestro tutorial comparamos tblSistema y tblSAT para identificar facturas que aparecen en una tabla, pero no en la otra.
Después de obtener los registros faltantes, guardamos los resultados en variables definidas mediante LET.
Una de esas variables es datosSistema. Contiene las facturas del sistema que no aparecen en el SAT.
Recuperar solamente los UUID
=ELEGIRCOLS(datosSistema,1)datosSistemaEs la matriz de facturas faltantes obtenida previamente mediante FILTRAR.
1Selecciona únicamente la primera columna, que contiene los UUID.
Agregar una columna descriptiva al reporte
Combinamos ELEGIRCOLS, SI y APILARH para identificar los registros recuperados y añadirles un mensaje.
=APILARH(
datosSistema,
SI(
ELEGIRCOLS(datosSistema,1)<>"",
"Falta factura en SAT",
""
)
)ELEGIRCOLS(datosSistema,1)Obtiene la primera columna de datosSistema, correspondiente a los UUID.
SI(...<>"",...)Comprueba si cada UUID contiene información y genera la descripción correspondiente.
APILARHColoca la columna de descripciones a la derecha de los datos originales.
Resultado del ejercicio
La matriz resultante contiene CFDI-009 y CFDI-015, ambas de CEMEX, con una columna adicional que indica que faltan en el SAT.
Errores frecuentes
Consideraciones importantes
Los índices comienzan en 1La primera columna de la matriz se identifica con 1, no con 0.
Índices fuera de rangoSi solicitas una columna que no existe en la matriz, Excel devolverá un error #¡VALOR!.
Referencias estructuradasUna tabla crece automáticamente cuando agregas filas, pero los índices numéricos pueden necesitar ajustes si reorganizas sus columnas.
Matrices dinámicasEl resultado necesita espacio libre para derramarse. Si existen datos que bloquean el área de salida, puede aparecer #¡DESBORDAMIENTO!.
ELEGIRCOLS admite índices negativos. Por ejemplo, -1 permite seleccionar la última columna de la matriz.
Aplicaciones
Cuándo utilizar ELEGIRCOLS
Seleccionar únicamente las columnas necesarias para un reporte.
Reorganizar columnas sin modificar la base de datos original.
Preparar matrices que posteriormente utilizarán otras funciones.
Construir estructuras dinámicas para dashboards, rankings y conciliaciones.
Funciones relacionadas
Combina ELEGIRCOLS con otras funciones
ELEGIRCOLS dentro de una conciliación real
Aprende a combinar ELEGIRCOLS, FILTRAR, LET, APILARH y APILARV para identificar diferencias entre dos tablas y generar un reporte de conciliación.
Ver tutorial y archivo de práctica