Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

141
Vistas
Obtener una hilera inicial con e.range

Estoy usando un script en Hojas de cálculo de Google que crea una marca de tiempo en una celda cuando se establece el valor de la celda contigua. Borra la fecha si se borra el valor de la celda de al lado.

Sin embargo, está afectando a toda la hoja. Solo quiero que este código funcione a partir de la fila 18.

Soy muy nuevo en la codificación. He investigado un poco, pero todavía no puedo resolverlo. Tengo una variable definida llamada StartRow e intenté usarla en mi instrucción if y luego en mi ciclo en lugar de "e.range.rowStart" , pero activó la fecha varias veces hacia arriba.

¿Puede alguien darme su opinión sobre lo que debo cambiar o agregar? ¡Gracias por adelantado!

Aquí está el código que estoy usando:

 function onEdit(e) { var sheet = ["Sheet1"]; var ss = SpreadsheetApp.getActiveSheet(); var StartRow = 18; //(defined but not sure where or if I should use it) var InputCol = 6; var OutputCol = 7; if (sheet.indexOf(ss.getName()) == -1 || e.range.columnStart != InputCol) return; var val = ss.getRange(e.range.rowStart, e.range.columnStart).getValue(); if (val) { var date = new Date(); for (var i = e.range.rowStart; i <= e.range.getLastRow(); i++) ss.getRange(i, OutputCol).setValue(date); } else ss.getRange(e.range.rowStart, OutputCol, e.range.getLastRow() - e.range.rowStart + 1).clearContent(); }

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Prueba esto:

 function onEdit(e) { //e.source.toast('entry'); const sh = e.range.getSheet(); if (sh.getName() == 'Sheet1' && e.range.rowStart > 18 && e.range.columnStart == 6) { if (e.value) { e.range.offset(0, 1).setValue(new Date()); } else { e.range.offset(0, 1).setValue(''); } } }
about 4 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 Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda