E+

ChakiArt

Excel · Datos · Automatización

Volver a Excel Lab
Excel Lab · Matrices dinámicas

ELEGIRCOLS

Selecciona las columnas que necesitas de una matriz y organízalas en el orden que quieras, sin modificar los datos originales.

Excel 365Matrices dinámicasNivel intermedio

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],...)
matrizObligatorio

Es el rango o matriz de donde queremos seleccionar las columnas.

columna1Obligatorio

Es el número de la primera columna que queremos recuperar. La numeración comienza en 1, tomando como referencia la matriz proporcionada.

[columna2], ...Opcional

Permite 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.

UUIDProveedorImporte
CFDI-001Aceros del Golfo$15,200
CFDI-002Ferretería Central$8,450
CFDI-003Materiales del Norte$23,800
CFDI-004CEMEX$145,000
CFDI-005Pinturas del Golfo$6,780
Ejemplo 1

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:C6

Es el rango de datos original.

1

Selecciona la primera columna: UUID.

3

Selecciona la tercera columna: Importe.

Resultado esperado

UUIDImporte
CFDI-001$15,200
CFDI-002$8,450
CFDI-003$23,800
CFDI-004$145,000
CFDI-005$6,780
Recomendado

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)
tblSistema

Hace referencia a todos los datos de la tabla.

1

Selecciona la columna UUID.

3

Selecciona 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)
2

Primero devuelve la columna Proveedor.

1

Después devuelve la columna UUID.

3

Finalmente devuelve la columna Importe.

Resultado

ProveedorUUIDImporte
Aceros del GolfoCFDI-001$15,200
Ferretería CentralCFDI-002$8,450
Materiales del NorteCFDI-003$23,800
CEMEXCFDI-004$145,000
Pinturas del GolfoCFDI-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)
datosSistema

Es la matriz de facturas faltantes obtenida previamente mediante FILTRAR.

1

Selecciona ú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.

APILARH

Coloca 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 1

La primera columna de la matriz se identifica con 1, no con 0.

Índices fuera de rango

Si solicitas una columna que no existe en la matriz, Excel devolverá un error #¡VALOR!.

Referencias estructuradas

Una tabla crece automáticamente cuando agregas filas, pero los índices numéricos pueden necesitar ajustes si reorganizas sus columnas.

Matrices dinámicas

El 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.

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