Recordatorios automáticos por email desde Google Sheets con Apps Script (y ChatGPT)
Crea con ayuda de la IA un script gratuito que revisa Google Sheets cada mañana y te avisa por email cuando una tarea, cita o pago va a vencer.
Por Redacción Atajo
- Herramientas
- Google Sheets, Apps Script, ChatGPT
- Nivel
- Intermedio
- Tiempo de montaje
- 30 minutos
- Actualizado
- 24 ago 2026
Si llevas en una hoja de Google Sheets fechas de vencimiento (pagos de clientes, renovaciones de contratos, citas, entregas), puedes hacer que la propia hoja te avise. Google Apps Script es una herramienta gratuita incluida en tu cuenta de Google que permite añadir pequeños programas a tus hojas de cálculo. Y no necesitas saber programar: la IA te ayuda a escribirlo y a entenderlo.
Lo que vas a construir
Un script que, cada mañana:
- Revisa una hoja con tareas y fechas límite.
- Envía un correo a la persona responsable cuando la tarea vence hoy, mañana o en dos días.
- Marca la fila como enviada para no repetir el aviso.
Paso 1. Prepara la hoja
Crea una pestaña llamada Recordatorios con estas columnas, en este orden:
Nombre | Email | Tarea | Fecha límite | Enviado
Rellena dos o tres filas de prueba con tu propio correo y fechas de hoy, mañana y dentro de una semana. Asegúrate de que la columna de fecha tiene formato de fecha (Formato › Número › Fecha), no texto.
Paso 2. Pide el script a la IA
Puedes usar el código de este artículo directamente, pero merece la pena ver cómo pedirlo, porque te servirá para cualquier otro script:
Escribe un script de Google Apps Script para una hoja llamada "Recordatorios" con las
columnas: Nombre, Email, Tarea, Fecha límite, Enviado (fila 1 = encabezados).
Debe enviar un correo con MailApp a cada fila cuya fecha límite sea hoy, mañana o
pasado mañana, si la columna Enviado no dice "Sí". Después debe escribir "Sí" en Enviado.
Ignora filas sin email o sin fecha válida. Comenta el código en español.
Paso 3. El código
Este es el resultado, revisado y probado en su lógica de fechas:
/**
* Envía un recordatorio por correo de cada tarea que vence en los próximos 2 días.
* Columnas de la hoja «Recordatorios»: Nombre | Email | Tarea | Fecha límite | Enviado
*/
function enviarRecordatorios() {
const hoja = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Recordatorios');
const filas = hoja.getDataRange().getValues();
const hoy = new Date();
hoy.setHours(0, 0, 0, 0);
for (let i = 1; i < filas.length; i++) {
const [nombre, email, tarea, fecha, enviado] = filas[i];
if (!email || enviado === 'Sí' || !(fecha instanceof Date)) continue;
const limite = new Date(fecha);
limite.setHours(0, 0, 0, 0);
const dias = Math.round((limite - hoy) / (1000 * 60 * 60 * 24));
if (dias >= 0 && dias <= 2) {
const cuando = dias === 0 ? 'hoy' : dias === 1 ? 'mañana' : 'en 2 días';
MailApp.sendEmail({
to: email,
subject: `Recordatorio: ${tarea}`,
body: `Hola, ${nombre}:\n\nTe recordamos que «${tarea}» vence ${cuando} ` +
`(${Utilities.formatDate(limite, Session.getScriptTimeZone(), 'dd/MM/yyyy')}).\n\nUn saludo.`,
});
hoja.getRange(i + 1, 5).setValue('Sí');
}
}
}
Para entender cualquier línea, pégala en ChatGPT o Claude y pregunta qué hace. Por ejemplo, la línea con Math.round calcula cuántos días faltan hasta la fecha límite.
Paso 4. Pégalo en Apps Script
- En tu hoja, abre Extensiones › Apps Script.
- Borra el contenido del editor y pega el código.
- Pulsa el icono de guardar.
- Elige la función
enviarRecordatoriosen el desplegable y pulsa Ejecutar.
La primera vez, Google te pedirá autorización para que el script lea la hoja y envíe correos en tu nombre. Te avisará de que la aplicación no está verificada: es normal, porque el script lo has creado tú. Pulsa Configuración avanzada y continúa.
Revisa tu correo: deberían llegar los recordatorios de las filas de hoy, mañana y pasado, y la columna Enviado debería decir «Sí» en esas filas.
Paso 5. Prográmalo cada mañana
- En el editor de Apps Script, abre el menú Activadores (el icono del reloj).
- Pulsa Añadir activador.
- Función:
enviarRecordatorios. Fuente del evento: Según tiempo. Tipo: Temporizador diario. Hora: por ejemplo, de 8 a 9. - Guarda.
A partir de ahora, el script se ejecutará solo cada día.
Ideas para adaptarlo
Pídeselas a la IA partiendo del código anterior:
- «Envíame a mí un único correo resumen con todas las tareas que vencen esta semana».
- «Añade una columna Teléfono y, en lugar de email, crea un evento en mi Google Calendar».
- «Cambia el aviso para que sea 7 días antes en lugar de 2».
Pega el código actual y pide solo el cambio. Así la IA no reescribe lo que ya funciona.
Límites a tener en cuenta
- Cupo de envíos: Google limita los correos que un script puede enviar al día. En cuentas gratuitas de Gmail ronda los 100 destinatarios diarios; en Google Workspace es bastante mayor.
- Zona horaria: el script usa la del proyecto de Apps Script (Configuración del proyecto). Comprueba que es la tuya.
- Fechas como texto: si una fecha está escrita como texto, el script la ignorará. Revisa el formato de la columna.
Conclusión
Con una hoja de cálculo que ya tenías y unas 30 líneas de código, has creado un sistema de recordatorios que trabaja cada mañana sin que te acuerdes de él. Y has aprendido el método para crear cualquier otro: describir con precisión lo que quieres, revisar lo que propone la IA y probarlo con datos de prueba antes de usarlo de verdad.