Influcharla: Modelado Finanzas al Cubo (Con Juan Pablo Rossi)
Una sesión desde 0 hasta tener un primero modelo de datos, fundamental para facilitar el análisis posterior.
De la contabilidad a las finanzas, pasando por el modelo de datos
En esta Influcharla, Juan Pablo Rossi construye desde cero un modelo tabular en Power Pivot para reporting financiero, partiendo del ERP de la empresa donde trabaja y terminando en un balance navegable por jerarquías.
Lo interesante no es solo el "cómo": es que empieza explicando por qué la estructura del modelo tiene que parecerse a la estructura de la contabilidad. Y esa parte es la que suele faltar cuando alguien aprende Power Pivot solo desde la herramienta.
Contabilidad y finanzas no son lo mismo
El punto de partida es una distinción que se pasa por alto: la contabilidad registra, las finanzas corporativas deciden.
Un ERP tiene dos mitades. Por un lado los módulos de gestión (cuentas a cobrar, cuentas a pagar, ventas, compras, fondos, impuestos, recursos humanos), que son la puerta de entrada de los datos. Por otro, la contabilidad, donde todo eso confluye y se resume en asientos.
La contabilidad registra mediante la partida doble, y de ahí sale la ecuación que todo modelo financiero acaba respetando:
Activo = Pasivo + Patrimonio Neto
El activo son los bienes y derechos. El pasivo y el patrimonio neto son las dos fuentes de financiación: recursos de terceros (proveedores, préstamos) y recursos propios. Y tanto activo como pasivo se dividen en corriente y no corriente, con un criterio muy simple: si se convierte en efectivo (o hay que desembolsarlo) dentro del próximo año, es corriente; si es después, no corriente.
Las finanzas corporativas van un paso más allá: al activo lo leen como decisiones de inversión, y al pasivo y patrimonio como decisiones de financiación.
Tres orígenes distintos en el mismo modelo
La demo conecta tres tipos de fuente, que es justo lo que se encuentra cualquiera en la práctica:
1. Servidor SQL (el ERP). La conexión se hace en vivo contra el servidor de la empresa, desde otra ubicación geográfica vía VPN. Un apunte que Juan Pablo remarca: cuando el dato viene de SQL prácticamente no hay que transformarlo, llega limpio. El trabajo de Power Query se dispara cuando el origen es un Excel.
Aquí aparece una particularidad muy común en los ERP: la tabla de asientos no guarda importes negativos. Todos los importes son positivos y hay una columna aparte que indica el signo de la operación. La solución es añadir una columna que multiplique importe por signo, sabiendo que activo y gastos aumentan en positivo, y pasivo, patrimonio neto e ingresos en negativo.
2. Un Excel con el plan de cuentas. Esta es la pieza clave del modelo y la decisión más útil de toda la sesión. El plan de cuentas de la empresa no se toca —advierte que el contador se resiste, con razón, a que se lo modifiquen—. Lo que se hace es clasificarlo en columnas nuevas:
- Monetaria o no monetaria (para el ajuste por inflación).
- Balance o estado de resultados.
- Actividad operativa, de inversión o de financiación (para el flujo de efectivo).
- Activo, pasivo o patrimonio neto.
- Nota contable a la que pertenece.
Cada clasificación es una columna más, y cada columna se convierte después en un nivel por el que navegar. No se modifica nada del histórico: se enriquece.
3. Una API web. Para el tipo de cambio se conecta a la API del Banco Central de la República Argentina, de modo que el modelo queda vinculado y no hay que actualizar cotizaciones mes a mes.
Un detalle práctico que surgió en directo: el asistente de origen web corta la URL a partir de cierta longitud. La solución es crear la consulta con una URL corta y luego completarla en el editor avanzado, escribiendo la dirección completa directamente en el código M.
Montar el modelo en estrella
Con los datos cargados, la carga se hace al modelo de datos, no a una hoja: no hace falta volcar millones de filas en una pestaña.
Power Query conecta con los orígenes; Power Pivot administra el modelo. En la vista de diagrama aparecen los dos tipos de tabla:
- Tabla de hechos: el mayor contable, donde cada cuenta aparece muchas veces.
- Tablas de dimensión: el plan de cuentas y el calendario, donde cada valor aparece una sola vez.
La relación entre ellas es de uno a muchos, y siempre fluye en esa dirección. Juan Pablo recomienda una convención de Rob Collie (uno de los ingenieros de Power Pivot): colocar las dimensiones arriba y los hechos abajo, porque así se ve de un vistazo cómo fluyen los filtros.
La tabla de calendario ni siquiera hay que construirla: en Power Pivot, desde Diseño > Nuevo, se genera automáticamente escaneando el modelo desde la primera fecha hasta la última.
Una diferencia con Power BI que conviene conocer: Power Pivot no permite relaciones de muchos a muchos. Y eso, sostiene, es más una protección que una limitación, porque ese tipo de relaciones es una fuente habitual de errores de modelado.
Las medidas: donde el modelo empieza a responder preguntas
El modelo con sus relaciones solo describe la realidad. Lo que la interpreta son las medidas, escritas en DAX, en el panel inferior de la vista de tabla de Power Pivot.
Y aquí es donde encaja todo el trabajo previo de clasificación del plan de cuentas: al montar una tabla dinámica desde el modelo, las filas se llenan con las dimensiones, y las clasificaciones se convierten en una jerarquía navegable — de activo/pasivo/patrimonio, a corriente y no corriente, a nota contable, y hasta la cuenta contable individual.
Es decir: el balance de presentación sale del modelo casi solo, porque la estructura contable ya estaba codificada en las columnas del plan de cuentas.
Conclusión
La lección de método de esta sesión es que un buen modelo tabular no se diseña mirando la herramienta, sino mirando el dominio. El esquema en estrella funciona aquí porque la contabilidad ya venía organizada en hechos (asientos) y dimensiones (plan de cuentas, calendario).
Y la decisión más rentable de toda la demo no tiene nada de técnica: enriquecer el plan de cuentas con columnas de clasificación en vez de reestructurarlo. Respeta el histórico, no obliga a negociar con el departamento contable, y es lo que convierte una lista plana de cuentas en un informe navegable.
Más contenido de Excel en InflueXcel
- Listas desplegables en cascada de n niveles con una sola validación y filas independientes CasoJuan planteó un reto que muchos hemos sufrido: un formulario en forma de rejilla con listas desplegables en cascada. Al elegir la familia en
- Interactive Canvas en Excel: dashboards interactivos con Copilot (Gantt, Sankey y más) TutorialInteractive Canvas es la nueva función de Copilot en Excel que crea dashboards interactivos dentro de tu libro con una sola frase: desde una
- SUMAR.SI.CONJUNTO en Excel: las 5 dudas más buscadas, resueltas (y por qué no acepta ELEGIRCOLS) TutorialLe pregunté a Copilot cuáles son las 5 dudas que más se buscan sobre la función SUMAR.SI.CONJUNTO y las resuelvo una a una en Excel, cada un
- Copilot vs Claude en Excel: les pido la misma plantilla de gastos y las someto a 10 pruebas TutorialLe pedí a Copilot en Excel (GPT-6 Sol) y a Claude en Excel (Opus 5.5) exactamente la misma plantilla para controlar los gastos de casa, con
- Listado filtrado en bloques por mes, con una fila de recuento debajo de cada mes CasoLuis trae un informe de clientes muy habitual: una tabla T_BD con la fecha de alta de cada cliente y una fecha tope de vencimiento (=FECHA.M
- FILTRAR en Excel: las 5 dudas más buscadas, resueltas (y una extra: filtrar entre fechas) TutorialLe preguntamos a Copilot cuáles son las 5 dudas que más se buscan sobre FILTRAR y las resolvemos una a una en Excel, cada una con un truco e
- Copilot vs Claude en Excel: les pido la misma plantilla de vacaciones y las someto a 10 pruebas TutorialLe pedí a Copilot en Excel (GPT-6 Sol) y a Claude en Excel (Opus 5.5) exactamente la misma plantilla para controlar las vacaciones de un equ
- Unir las columnas de cada fila con BYROW sin que sobre el separador del final: doce maneras CasoJuan tenía dos columnas por fila, un código (A.5) y una descripción (b) Prestaciones de servicios), y quería unirlas con un guion en medio:
- Reformatear un código alfanumérico al teclear: de NN1234567 a NN-12345-67 CasoEsta semana surgió en la comunidad una duda muy práctica: cómo conseguir que al escribir un código tipo NN1234567 (dos letras seguidas de si
- IMPORTTEXT e IMPORTCSV: análisis exhaustivo de comportamientos ocultos CasoAndrés Rojas Moncada se lanzó a probar a fondo las nuevas funciones IMPORTTEXT e IMPORTCSV (aún en beta) y compartió con la comunidad un aná