No tengo conocimiento de JS ni de ninguna extensión, este código me queda mejor. Entonces, lo que debo hacer es recibir la última fila de la matriz que corresponde a la fecha de hoy 13.10 hoy -> 13.10 hoy se agregó una fila y se la envió al bot en Telegram, pero toda la matriz está enviando, como todas las filas de esa matriz que contiene 12.10.2021, 13.10.2021, etc.
Este código debería llevar la(s) última(s) línea(s) añadida(s) a la tabla dependiendo de la fecha, si la fecha de hoy está al lado de la línea, esta línea se envía como un mensaje en Telegram.
Pero no tengo idea de cómo forzarlo a obtener la última fila (filas) de la matriz. ingrese la descripción de la imagen aquí
const token = "my Token"; function timer() { let ss = SpreadsheetApp.getActiveSpreadsheet(); let ws = ss.getSheetByName("SheetName"); let data = ws.getRange(2, 1, ws.getLastRow()-1, 10).getValues(); // console.log(data) let curentTime = new Date().getDate() + "." + (new Date().getMonth() + 1) + "." + new Date().getFullYear(); // console.log(curentTime) for (i = 0; i < data.length; i++) { let dataInfo = data[i]; // console.log(dataInfo) let clientName = dataInfo[3]; // console.log(clientName) let clientBirthday = dataInfo[0].toString(); // console.log(clientBirthday) let clientIdChat = "myID"; if (dataInfo[0] !== ""){ clientBirthday = dataInfo[0].getDate() + "." + (dataInfo[0].getMonth() + 1) + "." + dataInfo[0].getFullYear(); // console.log(clientBirthday) } if (clientBirthday == curentTime){ sendText(clientIdChat,data.toString()); } } // console.log(curentTime) } function sendText(chatId, text, keyBoard) { let data = { method: 'post', payload: { method: 'sendMessage', chat_id: String(chatId), text: text, parse_mode: 'HTML', reply_markup: JSON.stringify(keyBoard) } } UrlFetchApp.fetch('https://api.telegram.org/bot' + token + '/', data); } > A/Дата надходження B/Компанія C/ІПН D/ПІБ E/Номер справи F/Суд G/Область H/Місто відповідача I/Адреса відповідача J/Посилання на документ > A/12.10.2021 B/AC/1 D/Name E/111/3433/99 J/Link to document > A/13.10.2021 B/BC/2 D/name E/111/3433/99 J/Link to documentCreo que hay 2 problemas:
sendText debe anidarse dentro del ciclo for , por lo que solo lo ejecutará una vez que haya coincidido con el cumpleañossendText debería enviar dataInfo.toString no data.toString , ya que dataInfo refleja la fila actual mientras que data es la matriz completaHe reescrito ese segmento del código:
for (i = 0; i < data.length; i++) { let dataInfo = data[i]; // console.log(dataInfo) let clientBirthday = dataInfo[0].toString(); console.log(clientBirthday) if (clientBirthday == curentTime){ let clientName = dataInfo[3]; //console.log(clientName) let clientIdChat = "myID"; sendText(clientIdChat,dataInfo.toString()); } }