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

0

87
Vistas
Tiempo de espera de bucle al agregar nuevas últimas filas con valor establecido

Uno de mis scripts que se usa para un juego de fantasía similar al hockey no se ejecuta desde la semana pasada después de haber funcionado sin problemas durante los últimos 54 juegos de la temporada de la NHL. Este fue mi primer intento de secuencias de comandos, por lo que es probable que haya un error simple aquí, pero por mi vida, parece que no puedo entender por qué esto se está agotando ahora, mientras que antes tardaba solo unos segundos en ejecutarse.

El script usa un activador de edición para obtener el número de juego de una hoja llamada "Puntuación" y luego agrega un total de 20 filas al final de la hoja "Historial" con el valor del número de juego establecido en la primera columna, luego copia el cuadro puntuación a esas 20 filas y, finalmente, una hoja separada de 'Tarjeta de puntuación' utiliza los datos de 'Historial' para calcular la puntuación de cada participante.

De repente, la secuencia de comandos se retrasa mucho al agregar las nuevas últimas filas y establecer el valor de la primera columna en 'gamenum'. La secuencia de comandos parece retrasarse a diferentes velocidades, pero ahora parece que no puede pasar de crear y establecer el valor de entre 3 y 9 nuevas últimas filas antes de que se agote el tiempo de espera.

cualquier consejo será apreciado enormemente.

Gracias m

 function statHistory(){ var sourcesheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Scoring'); var gamerange = sourcesheet.getRange('B1'); var gamenum = gamerange.getValues(); var statrange = sourcesheet.getRange('B11:W28'); var stats = statrange.getValues(); var teamgoalierange = sourcesheet.getRange ('B31:W32') var teamgoaliestats =teamgoalierange.getValues(); var targetsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('History'); for (var gamehist = 0; gamehist <=19;gamehist = gamehist + 1){ targetsheet.getRange(targetsheet.getLastRow()+1,1).setValues(gamenum) } targetsheet.getRange(targetsheet.getLastRow()-19,2,18,22).setValues(stats) targetsheet.getRange(targetsheet.getLastRow()-1,2,2,22).setValues(teamgoaliestats)

almost 3 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Pruébalo de esta manera:

 function statHistory() { const ss = SpreadsheetApp.getActive(); const shs = ss.getSheetByName('Scoring'); const gamerange = shs.getRange('B1'); const gamenum = gamerange.getValue(); const statrange = shs.getRange('B11:W28'); const stats = statrange.getValues(); const teamgoalierange = shs.getRange('B31:W32') const tgstats = teamgoalierange.getValues(); const tsh = ss.getSheetByName('History'); let a = [] for (let i = 0; i < 20; i++{ a.push([gamenum]) } tsh.getRange(tsh.getLastRow() + 1, 1,a.length,a[0].length).setValues(a); tsh.getRange(tsh.getLastRow() - 19, 2, stat.length, stats[0].length).setValues(stats); tsh.getRange(tsh.getLastRow() - 1, 2, tgstats.length, tgstats[0].length).setValues(tgstats);
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