APILARH
Une dos o más matrices horizontalmente para construir una matriz más amplia, colocando unas columnas junto a otras.
Qué hace
Coloca varias matrices una al lado de otra
APILARH combina horizontalmente dos o más rangos o matrices. La primera matriz queda a la izquierda y las siguientes se incorporan a su derecha, respetando el orden indicado.
A diferencia de copiar y pegar columnas, el resultado es una matriz dinámica que puede actualizarse cuando cambian los datos originales.
Matriz 1
UUID
Matriz 2
Importe
Resultado
UUID | Importe
Sintaxis
Cómo se construye APILARH
=APILARH(matriz1,[matriz2],...)matriz1ObligatorioPrimera matriz o rango que formará parte del resultado.
[matriz2], ...OpcionalMatrices adicionales que se colocarán a la derecha de las anteriores.
El orden de los argumentos importa
APILARH conserva el orden de las matrices. Si intercambias sus posiciones dentro de la fórmula, también cambiará el orden de las columnas del resultado.
Ejemplos
Combinar dos columnas de facturas
Supongamos que tenemos los UUID de nuestras facturas en la columna A y sus importes en la columna C.
Datos originales
| Columna A | Columna C |
|---|---|
| CFDI-001 | $15,200 |
| CFDI-002 | $8,450 |
| CFDI-003 | $23,800 |
| CFDI-004 | $145,000 |
Utilizando rangos normales
Podemos combinar ambos rangos para obtener una matriz de dos columnas.
=APILARH(A2:A5,C2:C5)A2:A5Primera matriz: los UUID.
C2:C5Segunda matriz: los importes.
Utilizando una tabla de Excel
Si los datos se encuentran dentro de una tabla llamada tblSistema, podemos utilizar referencias estructuradas para seleccionar las columnas.
=APILARH(tblSistema[UUID],tblSistema[Importe])tblSistema[UUID]Selecciona la columna UUID de tblSistema.
tblSistema[Importe]Selecciona la columna Importe de la misma tabla.
Ventajas de utilizar una tabla
Cuando agregas nuevas facturas, las referencias estructuradas incorporan automáticamente los registros adicionales. No necesitas modificar manualmente los rangos.
Resultado de ambos ejemplos
| UUID | Importe |
|---|---|
| CFDI-001 | $15,200 |
| CFDI-002 | $8,450 |
| CFDI-003 | $23,800 |
| CFDI-004 | $145,000 |
Otra posibilidad
Agregar una columna calculada
APILARH también permite incorporar columnas creadas mediante fórmulas, sin necesidad de agregarlas físicamente a la tabla de origen.
Supongamos que queremos generar una tercera columna con el 16% de cada importe.
=APILARH(
tblSistema[UUID],
tblSistema[Importe],
tblSistema[Importe]*0.16
)tblSistema[UUID]Primera columna del resultado.
tblSistema[Importe]Segunda columna del resultado.
tblSistema[Importe]*0.16Tercera columna, calculada dinámicamente.
Este ejemplo calcula el 16% de los importes mostrados. Si tu base almacena importes que ya incluyen IVA, necesitarás adaptar el cálculo.
Aplicación real
APILARH en la conciliación de facturas
En nuestro tutorial de conciliación, primero utilizamos FILTRAR para recuperar las facturas de tblSistema que no aparecen en tblSAT.
Después necesitamos incorporar una columna que explique el motivo por el que aparece cada registro.
=APILARH(
datosSistema,
SI(
ELEGIRCOLS(datosSistema,1)<>"",
"Falta factura en SAT",
""
)
)datosSistemaContiene los registros del sistema que no aparecen en el SAT.
ELEGIRCOLS(datosSistema,1)Obtiene la primera columna de la matriz, donde se encuentran los UUID.
SIGenera la descripción correspondiente cuando el UUID no está vacío.
APILARHColoca esa descripción a la derecha de las columnas originales.
Resultado esperado
| UUID | Proveedor | Importe | Descripción |
|---|---|---|---|
| CFDI-009 | CEMEX | $87,500 | Falta factura en SAT |
| CFDI-015 | CEMEX | $62,400 | Falta factura en SAT |
El reporte incorpora una nueva columna
No necesitamos modificar tblSistema ni crear columnas auxiliares. Construimos una nueva matriz utilizando los resultados de las funciones anteriores.
Un detalle importante
APILARH también puede crear matrices auxiliares
En la conciliación utilizamos APILARH de otra manera: para construir una fila de tres valores vacíos.
=FILTRAR(
tblSistema,
faltaSAT,
APILARH("","","")
)La expresión APILARH con tres cadenas vacías genera una matriz de una fila y tres columnas.
Columna 1
""
Columna 2
""
Columna 3
""
Si FILTRAR no encuentra registros, devuelve esa fila auxiliar. Así mantenemos una estructura compatible con las siguientes operaciones, en las que necesitamos tres columnas.
En el paso final de nuestra conciliación, eliminamos las filas auxiliares cuyo UUID está vacío.
Errores frecuentes
¿Qué ocurre si las matrices tienen distintas alturas?
APILARH admite matrices con diferentes cantidades de filas. Sin embargo, las posiciones sin datos disponibles se rellenan con el error #N/D.
Ejemplo
Si la primera matriz tiene cuatro filas y la segunda solamente dos, Excel genera una matriz de cuatro filas y rellena con #N/D las posiciones faltantes.
Error #N/DPuede aparecer cuando las matrices no tienen la misma cantidad de filas. Puedes controlar el resultado con SI.ERROR cuando corresponda.
Error #¡DESBORDAMIENTO!Aparece cuando existen datos que bloquean el espacio donde debería generarse la matriz dinámica.
Filas relacionadasAPILARH combina las matrices según su posición, no mediante una clave de búsqueda. Si sus filas no corresponden entre sí, el resultado puede asociar datos incorrectamente.
Aplicaciones
Cuándo utilizar APILARH
Combinar horizontalmente matrices y rangos.
Crear reportes con columnas calculadas.
Agregar etiquetas o descripciones a matrices dinámicas.
Construir estructuras que alimentarán otros cálculos y dashboards.
Funciones relacionadas
APILARH forma parte de las funciones de construcción matricial
APILARH dentro de una conciliación real
Aprende cómo combinar APILARH con FILTRAR, ELEGIRCOLS y LET para construir un reporte que identifica diferencias entre dos bases de datos.
Ver tutorial y archivo de práctica