AutomatizaciónIntermedio5 min de lectura

Cómo automatizar el control de gastos freelance

Automatiza gastos freelance en Google Sheets con limpieza de fechas, detección de duplicados, cola de excepciones y dashboard semanal.

Esta guía te muestra cómo automatizar el control de gastos para profesionales freelance en Google Sheets, desde la importación de archivos CSV bancarios con datos inconsistentes hasta la creación de un dashboard semanal de gastos y una cola de excepciones fácil de revisar. El diseño se probó con un archivo de 35,000 filas que incluye fechas en distintos formatos, filas de origen vacías, transacciones duplicadas, símbolos de moneda, valores nulos y cadenas N/A.

Lo que necesitarás

  • Una cuenta de Google con acceso a Google Sheets y Apps Script
  • Exportaciones bancarias, de tarjetas o de plataformas de pago en formato CSV
  • Conocimientos de ARRAYFORMULA, QUERY, IFERROR y rangos con nombre
  • Un libro con pestañas separadas llamadas Raw, Normalized, Duplicates, Exceptions y Dashboard
  • El CSV de prueba con 35,000 filas y el libro probado para comparar el número de filas y excepciones

Guía paso a paso

1

Estructura el libro para automatizar el control de gastos freelance

Mantén los datos importados separados de las fórmulas y los resultados del dashboard. La pestaña Raw debe poder reemplazarse sin problema, mientras que Normalized funciona como la fuente confiable para los reportes posteriores.

  • Crea 5 pestañas llamadas Raw, Normalized, Duplicates, Exceptions y Dashboard.
  • Usa estos encabezados en Raw: ID de origen, Fecha de transacción, Proveedor, Descripción, Importe, Moneda, Categoría, URL del comprobante y Fecha de importación.
  • Reserva las filas 2 a 40001 para un máximo de 40,000 transacciones importadas.
  • Haz que todas las fórmulas del dashboard apunten a Normalized, nunca directamente a Raw.
  • Valida la fila de encabezados entrante antes de reemplazar la importación anterior.

Pro Tip

Una columna nueva agregada al CSV puede desplazar todas las fórmulas que dependen de posiciones. Compara los encabezados entrantes con el esquema esperado de 9 columnas antes de borrar los datos operativos de la semana anterior.
2

Importa datos CSV sin destruir la actualización anterior

Una importación segura debe detenerse antes de borrar datos válidos. Esto es importante cuando un banco cambia silenciosamente el nombre de Fecha de transacción a Fecha de registro a las 5:57 a. m. de un lunes.

  • Guarda los archivos CSV entrantes en una carpeta exclusiva de Google Drive.
  • Selecciona el archivo más reciente según su fecha de creación o un patrón exacto de nombre.
  • Procesa el CSV en memoria y verifica los 9 encabezados esperados.
  • Borra Raw solo después de que la validación del esquema sea exitosa.
  • Escribe el arreglo completo de 35,000 filas con una sola llamada a setValues, no con 35,000 llamadas a appendRow.

Pro Tip

Registra el nombre del archivo y la fecha y hora de importación en 2 celdas de control. Cuando alguien cuestione una cifra, esas celdas te indicarán qué exportación alimentó realmente el dashboard.
3

Normaliza filas vacías, fechas mixtas e importes dañados

La validación de filas vacías debe estar al inicio de la cadena de normalización. Si las filas de origen vacías se convierten en PROVEEDOR DESCONOCIDO, recibirán claves de transacción y saturarán la cola de excepciones con registros que nunca existieron.

  • Usa las columnas A a I para Fila de origen, Fecha, Proveedor, Descripción, Importe, Moneda, Categoría, Clave de transacción y Problema base.
  • Considera que una fila existe cuando al menos 1 de estos campos contiene datos: ID de origen, Fecha, Proveedor o Importe.
  • Devuelve una celda realmente vacía en todas las fórmulas posteriores cuando Fila de origen esté vacía.
  • Convierte N/A, NULL y los valores de proveedor vacíos en PROVEEDOR DESCONOCIDO solo cuando correspondan a filas de origen reales.
  • Limita los cálculos hasta la fila 40001 en lugar de utilizar columnas completas.

Pro Tip

Guarda la convención de fechas de cada fuente en una pequeña tabla de configuración. Inferir el formato según la configuración regional funciona hasta que deja de hacerlo, normalmente durante el cierre de mes.
4

Crea claves de transacción y validaciones acotadas de duplicados

Una clave de transacción te permite detectar importaciones repetidas de forma consistente. No ejecutes un COUNTIF sobre una columna completa dentro de MAP para 35,000 filas. Esa configuración analiza repetidamente un rango abierto y se vuelve difícil de operar por encima de 50,000 filas.

  • Crea claves únicamente cuando Fila de origen no esté vacía.
  • Prioriza el ID de origen cuando el banco proporcione un identificador estable.
  • Si no existe, usa la fecha, el proveedor normalizado, el importe y la moneda.
  • Agrupa una sola vez las claves duplicadas en la pestaña Duplicates.
  • Limita la tabla de búsqueda de duplicados y muestra una advertencia de capacidad excedida cuando supere las 5,000 claves.
5

Crea una cola de excepciones segura ante valores nulos y un KPI correcto

El número de excepciones debe ser igual al número de filas de transacciones reales que requieren revisión. No debe restar claves vacías ni contar dos veces una misma fila cuando tiene una fecha incorrecta y una clave duplicada.

  • Agrega Problema final en la columna J de Normalized.
  • Da prioridad a los errores de validación base y después revisa los duplicados.
  • Busca únicamente en Duplicates A2:A5001, no en una columna completa.
  • Construye la cola con las filas donde Problema final no esté vacío.
  • Cuenta las filas con excepciones directamente desde la cola.

Pro Tip

Incluye esos 4 conteos esperados en un bloque de Resultados de pruebas. Una actualización solo se aprueba cuando las filas importadas son 35,000 y la suma de las filas aceptadas y las filas con excepciones también es 35,000.
6

Automatiza el dashboard de gastos freelance

Un resultado útil incluye una tendencia semanal y una cola de revisión visible, no una hoja que solo anuncie que la importación terminó correctamente. Los responsables del negocio necesitan saber si el gasto está aumentando, qué categorías cambiaron y cuántas transacciones siguen pendientes.

  • Crea una tendencia de gastos de 13 semanas agrupada por fecha de inicio de semana.
  • Agrega una tabla con los 10 principales proveedores usando importes normalizados.
  • Muestra Filas importadas, Filas aceptadas, Filas con excepciones y Última actualización.
  • Marca como VENCIDA cualquier excepción con más de 7 días.
  • Limita los cálculos del dashboard hasta la fila 40001.
7

Programa, monitorea y prueba la actualización

Google Sheets no se convierte en un sistema de gastos solo porque exista un activador basado en tiempo. La automatización también necesita mostrar las fallas y ejecutar una prueba de conteo de filas que detecte importaciones parciales.

  • Programa la importación del CSV entre las 5:00 a. m. y las 6:00 a. m.
  • Registra el estado de la actualización, el nombre del archivo, el número de filas y el mensaje de error en celdas de control.
  • Genera una alerta cuando la importación tenga más de 36 horas de antigüedad.
  • Marca la prueba como fallida cuando la suma de las filas aceptadas y las filas con excepciones no sea igual al número de filas importadas.
  • Conserva los datos anteriores de Raw cuando falle la validación del esquema o el procesamiento del CSV.

Pro Tip

No programes una actualización para las 5:59 a. m. si la reunión diaria comienza a las 6:00 a. m. Deja tiempo suficiente para que la importación, las fórmulas y la alerta de fallas terminen antes de que alguien abra el dashboard.

Conclusión

Ahora tienes un flujo automatizado de gastos que conserva la última importación válida, ignora las filas de preparación sin usar, tolera problemas comunes de los archivos CSV, aísla las excepciones y genera una vista del gasto de las últimas 13 semanas. El bloque de conciliación es la pieza que debes conservar: las 35,000 filas importadas siempre deben ser iguales a la suma de las filas aceptadas y las filas con excepciones.

Prueba ModelMonkey gratis durante 14 días - funciona tanto en Google Sheets como en Excel.

Preguntas frecuentes

¿Cuántas filas de gastos puede manejar Google Sheets?

Google Sheets permite hasta 10 millones de celdas por hoja de cálculo. Un libro de 40,000 filas, con 5 pestañas y 25 columnas por pestaña, utiliza cerca de 5 millones de celdas. Por lo tanto, la capacidad de filas depende en gran medida de cuántas columnas de preparación y del dashboard crees.

¿Por qué las filas vacías aparecen como excepciones de gastos?

Las filas vacías se convierten en excepciones cuando las fórmulas de normalización reemplazan valores faltantes antes de comprobar si existe una fila de origen. Primero crea una validación de fila de origen y después devuelve una celda vacía en todas las fórmulas posteriores cuando esa validación esté vacía.

¿Cómo deben contarse los gastos duplicados?

Cuenta cada fila de transacción cuya clave aparezca más de una vez, no solo el número de claves repetidas. Si 2 filas idénticas comparten 1 clave, el KPI de excepciones debe aumentar en 2, mientras que el resumen de duplicados debe contener 1 clave agrupada con un conteo de 2.

¿El registro puede manejar distintos formatos de fecha?

Puede procesar números de serie de fechas nativos y cadenas comunes como 2026-07-15, 7/15/26 y 15 Jul 2026. Las fechas ambiguas, como 03/04/26, necesitan una regla específica para cada fuente porque el valor puede representar 2 fechas diferentes.

¿Cuándo conviene sacar el control de gastos de Google Sheets?

Comienza a planificar la migración cuando superes aproximadamente las 50,000 filas activas y las importaciones, las validaciones de duplicados y las consultas del dashboard compartan un mismo libro. Google Sheets puede permanecer por debajo del límite de 10 millones de celdas, pero el tiempo de recálculo aun así puede hacer que operar el dashboard sea muy frustrante.