La función COUNT() en AppSheet es esencial cuando necesitas contar la cantidad de registros que cumplen con una condición. Es perfecta para apps de control de pedidos, asistencia, inventario, tareas completadas y mucho más.
Una forma sencilla de usarla es así:
COUNT(GASTOS[ID])
📌Esta fórmula cuenta todos los registros en la columna ID dentro de la tabla GASTOS, sin aplicar ningún filtro. Es útil cuando deseas conocer la cantidad total de gastos registrados.

¿Vale la Pena Usar COUNT(GASTOS[ID]) en AppSheet?
La sintaxis COUNT(GASTOS[ID]) permite contar todos los registros de la columna ID en la tabla GASTOS, y es una forma muy directa de usar la función COUNT().
Sin embargo, en muchos casos esta fórmula no es necesaria, ya que AppSheet nos ofrece herramientas como Group Aggregate en vistas tipo tabla o deck. Con esta opción, puedes agrupar datos (por ejemplo, por cliente o por fecha) y automáticamente mostrar el conteo sin necesidad de crear una columna virtual ni escribir una fórmula.
✅ Entonces, ¿cuándo evitar COUNT(GASTOS[ID]) directamente?
- Cuando solo necesitas ver el total agrupado en una vista.
- Cuando no necesitas aplicar condiciones o filtros específicos.
💡 La función COUNT() sigue siendo fundamental, especialmente cuando la usamos junto a SELECT() u otras funciones que permiten aplicar filtros. Pero la sintaxis básica COUNT(GASTOS[ID]) puede considerarse innecesaria en muchos casos prácticos dentro de AppSheet.

💡 Mostrar el número de gastos o filas por meses en AppSheet
Para mostrar el número de gastos correspondientes a un mes específico, podemos usar la siguiente fórmula:
COUNT(SELECT(Gastos[ID], [Mes] = [_THISROW].[Mes]))
¿Qué hace esta fórmula?
Esta fórmula cuenta cuántos registros (o gastos) hay correspondientes a un mes específico. No cuenta todos los registros indiscriminadamente; primero filtra los datos por mes y luego realiza el conteo solo de aquellos que coinciden con el mes de la fila actual.
Es muy útil cuando tienes, por ejemplo, una tabla de resumen mensual y necesitas saber automáticamente cuántos gastos ocurrieron en cada mes, sin hacer el conteo manualmente.
🔍 Desconstruyendo la fórmula paso a paso
Vamos a ver en detalle cómo funciona cada parte de esta fórmula y qué está haciendo exactamente:
🔸 _THISROW_THISROW significa «esta fila». Se refiere directamente a la fila donde se está ejecutando la fórmula.
Por ejemplo, si estás en una fila que representa el mes de “Julio”, entonces _THISROW.[Mes] devolverá “Julio”.
En resumen:_THISROW.[Mes]
➡️ Significa: “El valor del mes en la fila actual”.
🔸 SELECT(Gastos[ID], [Mes] = [_THISROW].[Mes])
Esta parte es clave. Vamos a desglosarla:
📍 Gastos[ID]
Indica que queremos extraer los valores de la columna ID de la tabla Gastos. Generalmente usamos ID porque cada fila tiene un identificador único, y contar IDs equivale a contar filas.
📍 [Mes] = [_THISROW].[Mes]
Es la condición del filtro. Dice:
“Solo quiero los IDs de la tabla Gastos cuyo campo [Mes] coincida con el mes que tengo en esta fila actual”.
Entonces, si la fila actual representa el mes de “Agosto”, esta expresión buscará todos los registros en la tabla Gastos que también tengan “Agosto” como mes.
En resumen:SELECT(Gastos[ID], [Mes] = [_THISROW].[Mes])
➡️ Devuelve una lista de IDs (filas) de la tabla Gastos filtrados por el mes actual.
🔸 COUNT(...)
Una vez que SELECT(...) devuelve la lista de IDs filtrados por mes, la función COUNT(...) simplemente cuenta cuántos elementos hay en esa lista.
✅ Entonces, en conjunto:COUNT(SELECT(Gastos[ID], [Mes] = [_THISROW].[Mes]))
➡️ Devuelve la cantidad total de registros de gastos correspondientes al mismo mes que el de esta fila.
🟡 Importante: ¿Es necesario usar esta fórmula?
Aunque esta fórmula es muy útil, no siempre es necesaria. AppSheet permite contar registros directamente desde una vista tipo “Table” o “Deck” usando la opción de «Group aggregate».
Si agrupas por mes, puedes hacer que AppSheet muestre automáticamente la cantidad de registros (como número de gastos por mes), sin necesidad de crear una columna virtual con esta fórmula.
✅ Entonces, usar esta fórmula tiene sentido si:
- Necesitas usar la cantidad de registros mensuales en otras fórmulas.
- Quieres personalizar o reutilizar el resultado en una columna virtual.
- O necesitas mostrar el conteo en una tabla distinta a la de
Gastos.

Contar desde otra tabla en AppSheet
A veces necesitamos contar registros que no están directamente en la misma tabla donde estamos trabajando. Y sí, se puede hacer sin complicaciones.
✅ Ejemplo:COUNT(SELECT(Gastos[ID], [Categoria] = [_THISROW].[Categoria]))
Esta fórmula, que se realiza desde una tabla llamada Totales, nos permite contar todos los registros de la tabla Gastos que pertenecen a una categoría específica, comparando el campo [Categoria] de mi tabla Totales con el de la fila actual. Es decir, esta fórmula aplica un filtro porque en ambas tablas existe una columna con datos iguales. Luego, cuenta la cantidad de registros que coinciden con ese filtro.
Este tipo de estructura se usa comúnmente con columnas tipo ID, como podrás ver más abajo.
📌 Por ejemplo:
Si la fila actual representa la categoría «Comida», esta fórmula contará todos los gastos registrados en esa categoría.


Cabe mencionar que no siempre es necesario tener una misma columna en ambas tablas para poder realizar un conteo. Si lo que se necesita es simplemente obtener el total de una columna sin aplicar filtros, podemos usar directamente la función COUNT(GASTOS[ID]), como vimos en la parte superior. Esta opción es útil cuando no requerimos condicionar la fórmula a ningún valor específico.
📅 CONTAR por un rango de fechas
Ahora vamos un paso más allá. Supongamos que queremos contar todos los gastos dentro de un rango de fechas, por ejemplo del 1 al 15 de mayo. Para eso usamos esta fórmula:
COUNT(
SELECT(
Gastos[ID],
AND(
[Fecha] >= [_THISROW].[Fecha_Inicio],
[Fecha] <= [_THISROW].[Fecha_Fin]
)
)
)
🧩 Descomponiendo la fórmula paso a paso
🔹 [_THISROW].[Fecha_Inicio] y [_THISROW].[Fecha_Fin]
Estos valores vienen de la tabla actual y representan el rango de fechas que queremos evaluar. El usuario puede elegir estas fechas, o pueden generarse automáticamente.
🔹 AND([Fecha] >= ..., [Fecha] <= ...)
Esta parte define el filtro lógico:
Solo se seleccionarán los registros de la tabla Gastos cuya fecha esté dentro del rango establecido.
🔹 SELECT(Gastos[ID], ...)
Una vez definido el filtro con AND(...), esta función selecciona los valores de la columna ID de la tabla Gastos, solo si cumplen con el filtro de fechas.
🔹COUNT(...)
Finalmente, la función COUNT(...) toma esa lista filtrada de IDs y devuelve la numero total de filas.
🧠 Resultado final
Con esta fórmula, obtienes el numero total de los IDs registrados entre dos fechas específicas, incluso si esos datos están en otra tabla.
💡 Consejo
Al permitir que el usuario seleccione una fecha de inicio y una fecha final, puedes crear reportes o paneles totalmente dinámicos. Esta técnica es ideal para:
- Reportes mensuales
- Comparativas semanales
- Resúmenes personalizados
- Filtrar gastos por periodos específicos
📥 Base de Datos para Practicar
Haz clic en el siguiente enlace para acceder a la hoja de cálculo (base de datos) que utilizamos en este curso. Recuerda que debes hacer una copia en tu propio Google Drive para poder editarla y conectarla a tu app en AppSheet.
➡️ Haz clic aquí para abrir la base de datos
(Sigue el ejemplo que ves en la imagen de abajo para hacer tu copia correctamente)







