Hoy en día crear una aplicación ya no es solo para programadores. Con herramientas como AppSheet y el apoyo de la inteligencia artificial, puedes construir una aplicación completa de citas médicas sin saber programar, sin escribir código, sin dominar Excel ni Google Sheets.
👉 Lo único que necesitas es lógica, saber qué quieres que haga tu app y dejar que la IA te ayude con las fórmulas.
En este video aprenderás Cómo crear una app de citas médicas en AppSheet, explicado paso a paso
En este video se muestra de forma clara y práctica todo lo que se explica en el artículo, con ejemplos reales y una explicación visual que hace el proceso mucho más fácil de entender.
Descarga la app completa: App, Base de datos, HTML del ticket y archivos listos para copiar
Todos los archivos están organizados y listos para usar. Puedes donar cualquier monto si quieres apoyar mi trabajo. Así me ayudas a seguir creando contenido y tutoriales de calidad para ti.
App de Citas Médicas en AppSheet – Kit Completo de Diseño de Ticket HTML, Base de Datos y App
Precio Sugerido: $3,49
¿Qué necesitas para empezar?
Muy poco:
- Un correo Gmail
- Un ordenador
- Acceso a Google Drive
Nada más. Todo lo técnico lo resolveremos con AppSheet y la IA.
1. Base de datos, carpeta principal y conexión a AppSheet
1.1 Crear la carpeta principal
- Entra a Google Drive
- Ve a Mi Unidad
- Crea una carpeta llamada:
- Citas_Medicas
📌 Recomendación: usa nombres sin tildes ni espacios para evitar errores futuros.
1.2 Crear la base de datos en Google Sheets
- Dentro de la carpeta Citas_Medicas, crea un Google Sheet
- Ponle el mismo nombre:
- Citas_Medicas
- La primera hoja será la tabla Pacientes
Columnas de la tabla Pacientes:
- ID
- Nombre
- Correo
- Telefono
- Direccion
- Identificacion
- Fecha_Nacimiento
- Genero
- Tipo_Sangre
- Foto
1.3 Conectar la base de datos con AppSheet
- Entra a https://www.appsheet.com
- Inicia sesión con tu Gmail
- Haz clic en: Create → App → Start with existing data
- Nombre de la app: Citas Médicas
- Selecciona cualquier categoría (no influye)
- Haz clic en Choose your data
- Selecciona Google Sheets
- Busca la carpeta Citas_Medicas y selecciona el archivo
✨ AppSheet creará automáticamente una app funcional.
1.4 Configurar la carpeta por defecto de la app
En AppSheet:
- Ve a Settings → Information
- En Default app folder borra todo
- Escribe solo:
/Citas_Medicas
1.5 Mover el archivo empty.txt (MUY IMPORTANTE)
- En Google Drive ve a:
- Mi Unidad → AppSheet → Data
- Busca la carpeta que AppSheet creó automáticamente (algo como):
CitasMedicas-123456789- Dentro encontrarás el archivo empty.txt
- Muévelo a la carpeta Citas_Medicas
✅ Con esto evitas errores futuros con PDFs y archivos.
2. Configurar la tabla Pacientes
Ve a Data → Columns → Pacientes
2.1 Tipos de datos recomendados
- ID → Text
- Nombre → Text
- Correo → Email
- Telefono → Phone
- Direccion → Address
- Identificacion → Phone (permite ceros a la izquierda)
- Fecha_Nacimiento → Date
- Genero → Enum
- Valores: Masculino, Femenino, Otro
- Tipo_Sangre → Text
- Foto → Image
📌 Usa Display Name para mostrar los nombres correctamente en la app.
2.2 Crear columna virtual Edad
Crea una Virtual Column llamada Edad y pega esta fórmula:
YEAR(TODAY()) - YEAR([Fecha_Nacimiento])
-
IF(
OR(
MONTH(TODAY()) < MONTH([Fecha_Nacimiento]),
AND(
MONTH(TODAY()) = MONTH([Fecha_Nacimiento]),
DAY(TODAY()) < DAY([Fecha_Nacimiento])
)
),
1,
0
)
🔹 Las columnas virtuales se actualizan automáticamente.
2.3 Configurar vistas de Pacientes
Edita las vistas:
- Table
- Detail
- Form
Ordena, oculta o muestra los campos como prefieras.
✅ Con esto la tabla Pacientes queda lista.
3. Crear y configurar la tabla Citas
3.1 Crear la hoja Citas en Google Sheets
Agrega una nueva hoja llamada Citas con estas columnas:
- ID
- Paciente
- Fecha_Cita
- Hora
- Hora_Fin
- Precio
- Motivo
- Estado_Cita
- Fecha_Creacion
- Numero_Comprobante
- Cod_Ticket
- Estado_Ticket
- Ticket
3.2 Agregar la tabla a AppSheet
- Ve a Data → Add new data
- Selecciona Google Sheets
- Elige el mismo archivo
- Acepta la nueva tabla
3.3 Configurar tipos de datos
- ID → Text
- Paciente → Ref → Source table: Pacientes
- Fecha_Cita → Date
- Initial Value:
TODAY()
- Initial Value:
- Hora → Time
- Hora_Fin → Time
- Precio → Price
- Motivo → LongText
- Estado_Cita → Enum
- Valores: Agendada, Atendida, Cancelada
- Initial Value: Agendada
- Fecha_Creacion → DateTime
- Initial Value:
NOW()
- Initial Value:
- Numero_Comprobante → Text
- Fórmula:
CONCATENATE("#Ticket-",UPPER([ID]),"-00",[_RowNumber])
- Cod_Ticket → Number
- Estado_Ticket → Enum
- Valores: Procesando.., Generado
- Ticket → File
3.4 Crear vistas de Citas
Crea una vista tipo Table para ver las citas y ajusta las vistas:
- Table
- Detail
- Form
- Inline
3.5 Acciones para cambiar estado de la cita
Crea 3 acciones:
- Atendida
- Cancelada
- Agendada
Tipo:
- Data: set the values of some columns in this row
Campo a cambiar:
- Estado_Cita
Duplica la acción y cambia solo el valor y el ícono.
3.6 Evitar que las citas se crucen (validación de horarios)
Un punto muy importante en una aplicación de citas médicas es evitar que dos citas se crucen en el mismo horario. AppSheet nos permite hacer esto fácilmente usando validaciones, sin programar.
La idea es simple:
👉 Si ya existe una cita en la misma fecha y el horario se cruza, AppSheet no permitirá guardar el registro.
¿Dónde se configura?
- Ve a Data → Citas
- Selecciona la columna Fecha_Cita
- Baja hasta la sección Data Validity
- En Valid If pega la siguiente fórmula:
COUNT(
SELECT(
Citas[ID],
AND(
[Fecha_Cita] = [_THISROW].[Fecha_Cita],
[_THISROW].[Hora] < [Hora_Fin],
[_THISROW].[Hora_Fin] > [Hora],
[ID] <> [_THISROW].[ID]
)
)
) = 0
Esta fórmula verifica que:
- La fecha de la cita sea la misma
- El horario no se cruce con otra cita existente
- No compare el registro consigo mismo (muy importante al editar)
Si detecta un cruce, el conteo será mayor a 0 y AppSheet bloqueará el guardado.
Mensaje de error personalizado
En el campo Invalid value error escribe:
Ya existe una cita en este horario para la fecha seleccionada.
Guarda los cambios y listo ✅
📌 Recomendación importante:
Esta fórmula fue creada con ayuda de ChatGPT, por eso es clave explicarle exactamente lo que quieres hacer y enviarle los nombres de los campos tal como están escritos en tu app. Así evitas errores y obtienes fórmulas precisas.
4. Crear el Ticket de la cita médica
4.1 Acción Crear Ticket
Crea una acción llamada Crear Ticket que haga lo siguiente:
- Sume Cod_Ticket + 1
- Cambie Estado_Ticket a
Procesando.. - Asigne el nombre del archivo en Ticket:
CONCATENATE("/Citas/",[Paciente].[Nombre],"-",UPPER([ID]),"-",[Cod_Ticket],".pdf")
Configura ícono y posición.
4.2 Bot para generar el PDF
> Evento
- Tabla: Citas
- Data change type: Updates
- Condition:
[_THISROW_BEFORE].[Cod_Ticket]<>[_THISROW_AFTER].[Cod_Ticket]
> Proceso | Crear PDF
- Task: Create a new file
- HTTP Content Type: HTML
- Guarda
Luego:
- Descarga el archivo HTML desde Google Drive
- Muévelo a Citas_Medicas
- Regresa a AppSheet
- Cambia el tipo a PDF
File folder path:
/Citas
File name prefix:
CONCATENATE([Paciente].[Nombre],"-",UPPER([ID]),"-",[Cod_Ticket])
Activa Disable timestamp
> Proceso | cambiar el estado del ticket a Generado
Agrega un paso más para indicar que el ticket ya fue generado.
- En el Proceso, crea un nuevo paso llamado Generado
- Selecciona Run a data action
- Tipo: Set row values
- En Set these columns, cambia:
- Estado_Ticket →
Generado
- Estado_Ticket →
Guarda y listo ✅
Así el ticket pasa de Procesando.. a Generado automáticamente.
4.3 Diseñar el Ticket con IA
- Usa una IA como Gemini o ChatGPT
- Pídele un ticket de cita médica en HTML
- Prueba el diseño en HTML Viewer
Reemplaza los valores por campos AppSheet usando:
<<[Campo1]>>
Ejemplo:
Paciente: <<[Paciente]>>
Edita el archivo HTML con Text Editor, pega el nuevo diseño y guarda.
4.4 Tamaño recomendado del PDF
En el bot:
- Attachment Page Size → Custom
- Height: 180
- Width: 110
App finalizada 🎉
Ya tienes:
- Registro de pacientes
- Gestión de citas
- Estados automáticos
- Tickets en PDF
- Todo sin programar
Desde aquí solo queda:
- Cambiar colores
- Poner logo
- Ajustar detalles visuales
🚀 Tu aplicación de citas médicas está lista para usarse.
🎓 Curso completo: Crea una App de Citas Médicas sin código (AppSheet)
Si quieres aprender a crear una aplicación de citas médicas profesional y completa, este curso te guía paso a paso desde cero hasta una app lista para uso real en consultorios o clínicas.
En el curso aprenderás a crear y configurar:
- Gestión de doctores y especialidades
- Registro de pacientes
- Agenda de citas médicas sin cruce de horarios
- Recetas médicas digitales
- Exámenes médicos y registros clínicos
- Firmas digitales de los doctores
- Diseño completo y profesional de la app
- Generación de tickets y documentos en PDF
- Envío automático de tickets y documentos por correo
- Automatizaciones y bots en AppSheet
- Estructura correcta de bases de datos para apps médicas
- Certificado de Curso
Todo explicado de forma clara, sin código, pensado para que entiendas la lógica y luego puedas crear tus propias aplicaciones.
🚀 App de Citas Médicas lista para usar (versión completa)
Si no quieres aprender todo el proceso y prefieres tener la app ya hecha, también puedes adquirir la aplicación de citas médicas completa, lista para usar y personalizar.
Esta versión incluye todo lo que se explica en el curso, pero ya implementado:
- App totalmente funcional
- Base de datos estructurada
- Flujo completo de citas
- Automatizaciones y tickets
- Lista para adaptarla a tu negocio



