• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

150
Vistas
¿Cómo obtener lastRow de una matriz de datos de la matriz de Google Sheet?

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 document
almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Creo que hay 2 problemas:

  1. el texto de sendText debe anidarse dentro del ciclo for , por lo que solo lo ejecutará una vez que haya coincidido con el cumpleaños
  2. la fórmula sendText debería enviar dataInfo.toString no data.toString , ya que dataInfo refleja la fila actual mientras que data es la matriz completa

He 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()); } }
almost 3 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda