Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

145
Views
Cómo publicar la hora actual cuando la casilla de verificación = VERDADERO

Trataré de mantener esto breve y dulce.

Estoy haciendo un formulario de empaque usando Hojas de cálculo de Google. Los usuarios completan el formulario utilizando los menús desplegables de la hoja de cálculo y presionan el botón Submit para enviar los datos a las Packaging Form Responses . Este script funciona perfectamente. Ahora estoy luchando por escribir un script para que la casilla de verificación en la celda O13 complete automáticamente los datos en la sección "Tiempo de espera" en la fila 13 con la hora actual. Notarás que tengo la hora actual dividida en diferentes celdas en la fila 24 (hh, mm, am/pm). Básicamente, cuando la casilla de verificación es = VERDADERO, quiero que los datos de la fila 24 se publiquen en la sección "Tiempo de espera" de la fila 13 (nota al margen: las filas 22-24 se ocultarán cuando el formulario esté activo). No he usado mucho la función onEdit(), así que podría usar algo de ayuda aquí.

Aquí está mi código hasta ahora:

 function onEdit(e) { var range = e.range; var spreadSheet = e.source; var column = range.getColumn; var row = range.getRow; var hours = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('H24').getValue(); var minutes = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('I24').getValue(); var ampm = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('J24').getValue(); if(column == 15 && row == 13){ SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('D13').setValue(hours); SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('F13').setValue(minutes); SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Packaging Form').getRange('H13').setValue(ampm) } }

No estoy seguro de qué está mal aquí, creo que tiene que ver con mis variables locales hours , minutes y ampm .

Además, aún no he llegado tan lejos, pero me gustaría que la hora actual que se publica en la fila 13 se borre cuando la casilla de verificación ya no = VERDADERO (es decir, cuando el usuario desmarca la casilla de verificación "Usar hora actual", el se borran los datos de la sección "Tiempo de espera"). Cualquier ayuda será enormemente apreciada, gracias.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Reemplazar

 var column = range.getColumn; var row = range.getRow;

por

 var column = range.getColumn(); var row = range.getRow();

o mejor

 var column = range.columnStart; var row = range.rowStart;

PD: también puede cambiar SpreadsheetApp.getActiveSpreadsheet() por hoja de spreadsheet .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!