Así que usando los recursos disponibles aquí, logré armar un código para enviar a mis colegas un correo electrónico cuando se presiona el botón y todo funciona bien, el único problema que tengo es convertir un enlace en algo en lo que pueden hacer clic para acceder. A continuación se muestra el código:

SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email addresses").activate();
var sheet = SpreadsheetApp.getActiveSheet();
  var startRow = 2; // First row of data to process
  var numRows = 2; // Number of rows to process
  // Fetch the range of cells A2:B3
  var dataRange = sheet.getRange(startRow, 1, numRows, 2);
  // Fetch values for each row in the Range.
  var data = dataRange.getValues();
  for (var i in data) {
    var row = data[i];
    var emailAddress = row[0]; // First column
    var message = "Dear"+" "+row[1]+" "+"here are todays classifications."; // Second column
    var DailyDips = "https://docs.google.com/spreadsheets/d/1ImiuI_osfShHHwA6lXn7npxgwRJ6wdM_l6dPhgcaFt4/edit#gid";
    var message2 = "Click this link to access the sheet"+" "+DailyDips;
    var message3 = <a href="https://docs.google.com/spreadsheets/d/1ImiuI_osfShHHwA6lXn7npxgwRJ6wdM_l6dPhgcaFt4/edit#gid">click here</a>;
   var Sheets = [{fileName:sheetName+".xlsx", content:contents, mimeType:"application//xlsx"},{fileName:sheetName2+".xlsx", content:contents2, mimeType:"application//xlsx"}]
   
MailApp.sendEmail({
    to: emailAddress,
    subject: "Daily Dips",
    htmlBody: message+'<br>'+message2,
    attachments: Sheets
  });
};

El problema es esta parte:

   var message3 = <a href="https://docs.google.com/spreadsheets/d/1ImiuI_osfShHHwA6lXn7npxgwRJ6wdM_l6dPhgcaFt4/edit#gid">click here</a>;

El último </a>; está en rojo y se queja del token <, tener un '"antes y después devuelve el mismo problema.

¿Alguna idea?

2
Sven 24 jul. 2020 a las 11:14

1 respuesta

La mejor respuesta

Incluya etiquetas HTML entre comillas:

Debe incluir el mensaje completo entre comillas, incluidas las etiquetas HTML como <a>. De lo contrario, el script no puede reconocer esto.

Sin embargo, dado que el valor de la propiedad href debe tener comillas propias, debe usar comillas simples para eso (''):

var message3 = "<a href='https://docs.google.com/spreadsheets/d/1ImiuI_osfShHHwA6lXn7npxgwRJ6wdM_l6dPhgcaFt4/edit#gid'>click here</a>";

O, alternativamente, use el carácter de escape (\"):

var message3 = "<a href=\"https://docs.google.com/spreadsheets/d/1ImiuI_osfShHHwA6lXn7npxgwRJ6wdM_l6dPhgcaFt4/edit#gid\">click here</a>";
1
Iamblichus 24 jul. 2020 a las 09:54