Cómo importar correos de una etiqueta de Gmail a Google Sheets

En este tutorial te voy a mostrar cómo puedes traer correos electrónicos de una etiqueta específica de Gmail a Google Sheets usando Google Apps Script. Esta es una continuación de un video anterior donde traíamos todos los correos de la bandeja de entrada, pero ahora vamos a filtrar por etiquetas, lo que te permitirá crear registros más personalizados, como por cliente o proyecto. Este método es muy útil para emprendedores, dueños de pequeñas empresas o cualquier persona que quiera organizar y analizar sus correos de forma automática y eficiente en Google Sheets.

Si prefieres ver el tutorial en video, te lo dejo a continuación:

¿Qué vas a lograr con este tutorial?

Al finalizar este tutorial, tendrás un sistema en Google Sheets que te permitirá escribir el nombre de una etiqueta de Gmail y, con solo un clic, importar todos los correos asociados a esa etiqueta. Además, podrás actualizar fácilmente la información y limpiar los registros anteriores si lo necesitas. Todo esto lo lograremos usando Google Apps Script y algunas funciones básicas de Google Sheets.

Preparando tu hoja de cálculo

Primero, debes crear una hoja en Google Sheets con una estructura similar a la siguiente, donde el usuario podrá escribir el nombre de la etiqueta que desea consultar:

¿Qué etiqueta quieres buscar?
prueba

Debajo de esta celda, vamos a pegar los encabezados de los datos que vamos a traer de Gmail, por ejemplo: remitente, asunto, mensaje, fecha.

RemitenteAsuntoMensajeFecha

Creando la etiqueta en Gmail

Antes de ejecutar el script, asegúrate de tener creada la etiqueta en tu Gmail y de haberle asignado correos. Puedes hacer esto desde la interfaz de Gmail creando una nueva etiqueta (por ejemplo, «prueba») y aplicándola a algunos correos para hacer pruebas.

El código de Google Apps Script

Ahora vamos a crear el script que hará todo el trabajo. Ve a Extensiones > Apps Script en tu hoja de cálculo y pega el siguiente código. Este es el método que yo uso y que expliqué paso a paso en el video:

function traerCorreos() {
  var hoja = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("etiqueta específica");
  var nombreEtiqueta = hoja.getRange("B1").getValue();
  var etiqueta = GmailApp.getUserLabelByName(nombreEtiqueta);
  var cadenas = etiqueta.getThreads();
  
  // Limpiar filas anteriores (desde la fila 4)
  if (hoja.getLastRow() > 3) {
    hoja.getRange(4, 1, hoja.getLastRow() - 3, hoja.getLastColumn()).clearContent();
  }
  
  cadenas.forEach(function(cadena) {
    var mensaje = cadena.getMessages()[0];
    hoja.appendRow([
      mensaje.getFrom(),
      mensaje.getSubject(),
      mensaje.getPlainBody(),
      mensaje.getDate()
    ]);
  });
}

Este script hace lo siguiente: toma el nombre de la etiqueta desde la celda B1, obtiene todos los hilos de esa etiqueta y, por cada uno, extrae el remitente, asunto, mensaje y fecha, pegándolos en la hoja. Además, limpia los datos anteriores para evitar duplicados.

Agregando un menú personalizado

Para facilitar la ejecución, podemos agregar un menú personalizado que llame a la función traerCorreos con un solo clic. Añade este código al mismo archivo de Apps Script:

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu("Correos")
    .addItem("Traer correos de la etiqueta", "traerCorreos")
    .addToUi();
}

Con esto, cada vez que abras la hoja, tendrás un menú llamado «Correos» desde donde podrás ejecutar el script fácilmente.

Personalizaciones y mejoras

Si quieres ir más allá, puedes crear una hoja adicional llamada «etiquetas» y usar la función GmailApp.getUserLabels() para listar todas tus etiquetas, lo que te permitirá crear un listado desplegable para seleccionar la etiqueta a consultar. Esto lo puedes hacer con un botón adicional que diga «Actualizar etiquetas». Si te interesa, házmelo saber en los comentarios y preparo una tercera parte del tutorial.

Resumen y próximos pasos

En este tutorial aprendiste a importar correos electrónicos de una etiqueta específica de Gmail a Google Sheets usando Google Apps Script. Vimos cómo limpiar los datos anteriores, personalizar la hoja y agregar un menú para facilitar el uso. Ahora puedes adaptar este sistema a tus necesidades, por ejemplo, para hacer seguimiento de clientes, proyectos o cualquier flujo de trabajo basado en correos electrónicos.

Si quieres aprender a usar Google Forms y Google Sheets desde cero, te invito a tomar un curso gratis de 2 horas.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

JuanSGuzman
Resumen de privacidad

Esta web utiliza cookies para que podamos ofrecerte la mejor experiencia de usuario posible. La información de las cookies se almacena en tu navegador y realiza funciones tales como reconocerte cuando vuelves a nuestra web o ayudar a nuestro equipo a comprender qué secciones de la web encuentras más interesantes y útiles.