Códigos más eficientes en Google Apps Script: Cómo recorrer una tabla de Google Sheets con arreglos

Поділитися
Вставка
  • Опубліковано 5 жов 2024
  • A medida que hacemos códigos más complejos en Google Apps Script que deben recorrer tablas grandes, vamos a encontrarnos con que debemos buscar formas mas eficientes de recorrer nuestras tablas
    Hoy te muestro como usar arreglos para hacer códigos mucho más poderosos y rápidos en Google Apps Script
    👍 Si te ha gustado este video, te encantará el curso gratis "Aprende Google Sheets en 2 horas". Aquí puedes obtener acceso juansguzman.co...
    📋 Puedes encontrar el código y la plantilla de este video (y los más de 350 videos del canal) inscribiéndote en un plan mensual o anual en mi membresía JuanSGuzman - juansguzman.com
    🎓Allí mismo, encontrarás un curso completo de Crear Formularios de Forms desde Sheets asi como más de 75 cursos completos de Sheets, Forms y Apps Script. Aquí puedes verlo juansguzman.co...
    ☎️ Si necesitas asesoría personalizada, ofrezco algunas horas a la semana de este servicio. juansguzman.co...
    🔔 Suscríbete al canal donde recibirás nuevos videos semanales de Sheets, Forms, Apps Script y más.
    Aquí algunos canales donde me puedes seguir y apoyar:
    📨 - Newsletter: juansguzman.co...
    ➤Patreon: juansguzman.co...
    ➤Telegram: juansguzman.co...
    ➤Instagram: juansguzman.co...
    ⓕ - Facebook: juansguzman.co...
    ➤Tiktok: juansguzman.co...
    𝕏 - (Twitter): juansguzman.co...
    Cualquier sugerencia, pregunta o inquietud, te invito a comentar más abajo

КОМЕНТАРІ • 118

  • @matuteblackk
    @matuteblackk Рік тому +4

    Como desarrollador puedo decir que tu contenido es espectacular. Seguí así! Gracias y saludos desde Argentina.

  • @naimlopez793
    @naimlopez793 11 місяців тому +1

    Dos palabras:
    Eficiente 💪🏻🔥
    Profesional 😎
    Amo ver estos códigos y aprender 🥹

    • @JuanSGuzman
      @JuanSGuzman  11 місяців тому +1

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @andresmauriciorendonocampo2161

    Amigo, muchisimas gracias por la explicaciónde arreglos, excelente.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @overodd
    @overodd 5 місяців тому +1

    Excelente forma de aprender Javascript, haciendo uso de Google Apps Script y Sheets.

    • @JuanSGuzman
      @JuanSGuzman  5 місяців тому +1

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @enriquegaytan380
    @enriquegaytan380 Рік тому +1

    Que Barbaridad, que buenos arreglo. Llega justo cuando requerí hacer algo así ¡¡¡ Impreshionante!!!

    • @JuanSGuzman
      @JuanSGuzman  Рік тому +1

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @Letur-Lefr
    @Letur-Lefr Рік тому +1

    Muchas gracias Juan! Estoy aprendiendo un montón con tus videos.

  • @dronehistory6954
    @dronehistory6954 Рік тому +1

    Excelente clase de arreglos, muchas gracias Amigo.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @alexarodriguez1725
    @alexarodriguez1725 2 роки тому +1

    Muchas gracias por el vídeo, por fin aprendí que significa i en for ;-) Y también aprendí el poder de los arreglos. Mil gracias!

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @lucianopessanha7437
    @lucianopessanha7437 2 роки тому +1

    Didático como sempre. Adoro seus vídeos Juan. Já conhecia os métodos mas ver nessa explica ao melhorou meu entendimento. Muito obrigado.

  • @JuanMauricioSanchezHernandez
    @JuanMauricioSanchezHernandez 4 місяці тому +1

    Excelente como siempre!

  • @cristianalexandertenjocort151
    @cristianalexandertenjocort151 Рік тому +1

    Hola, Juan he aprendido un monton con tus videos, y aprovecho para pedirte un favor de casualidad tienes un video donde muestre como eliminar la información para así recalcular.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      No se si te refieres a algo como eto
      ua-cam.com/video/TqgLVszdRPQ/v-deo.html
      Saludos!

  • @finachot
    @finachot 2 роки тому +1

    Como siempre,simple y claro.

  • @jasonbrenes6613
    @jasonbrenes6613 2 роки тому +1

    Excelente video Juan muchas gracias

  • @AlvaroMCZ
    @AlvaroMCZ 2 роки тому +1

    Tus videos han captado toda mi atención muchísimas gracias, ¿Por lo que veo hace falta aprender javascript para tener mejores resultdos verdad?

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Pues la verdad es que los expertos de javascript que conozco que han empezado en Google Apps Script, la cogen rápidisimo y pueden hacer unas cosas impresionantes
      Pero, si lo único que quieres hacer es GAS y Sheets no es tan necesario profundizar en javascript
      Si quieres explorar programazión web y de apps y más, si te lo recomendaría
      Saludos!

  • @deptosalkilo8563
    @deptosalkilo8563 2 роки тому

    Juan, estoy tremendamente agradecido de ti, por tu ayuda, y por la calidad y profundidad que le imprimes a cada uno de tus tópicos. En este video nos enseñas a cómo optimizar código, con mejor código ! ... y eso no se aprende en todas partes. Sólo un granito de arena para retribuir: No es necesario que debas cronometrar el tiempo para poder comparar ambos códigos. Esto lo puedes ver en el editor de código del Apps Script, en el Panel de la Izquierda, en "Ejecuciones", donde se entrega una tabla con los datos de ejecución de cada función "lanzada", y específicamente en la 5ta columna se señala el tiempo exacto empleado en la ejecución de cada función 🙂. Un Abrazo, y nuevamente, Muchas Gracias Juan ... Desde Chile.... muy al Sur del Mundo, donde termina el mismo !. BYE. (Punta Arenas, Chile.).😉

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Gran aporte!
      Tienes toda la razón
      Mil gracias!

    • @lucnic2012
      @lucnic2012 Рік тому

      @@JuanSGuzman estimado solo felicitarlo por sus videos, mil gracias... existe alguna forma de generar el número de fila manteniendo la letra de la celda por medio de un ciclo for?... lo e intentado y no se como concatenar la letra y el número que se genera en el ciclo for ... 'C' & i por ejemplo me da error

    • @JuanSGuzman
      @JuanSGuzman  Рік тому +1

      @@lucnic2012 Estas muy cerca
      Es "C"+i
      Saludos!

    • @lucnic2012
      @lucnic2012 Рік тому +1

      @@JuanSGuzman gracias Master

    • @lucnic2012
      @lucnic2012 Рік тому

      @JuanSGuzman Estimado se puede ejecutar un código App Script en forma inmediata al abrir una Sheets? por ejemplo que limpie un bloque especifico de la hoja apenas se abra una sheets google.

  • @AlfredoPerez-wo8ii
    @AlfredoPerez-wo8ii Рік тому +1

    Una vez mas te agradezco todo el conocimiento que compartes, me has ayudado bastante a optimizar mi código.
    Me surgió una duda y no encuentro información al respecto.
    Tengo un ForEach que me trae varios datos, pero dos de ellos son colores. Mi duda es la siguiente: ¿Como puedo obtener el color de una celda en hexadecimal dentro de mi arreglo usando ForEach?

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Depende si es el color de fondo o del texto.
      Para el de la celda intenta con .getBackground()
      Saludos!

  • @alozano
    @alozano 2 роки тому +2

    Muy bueno, muchas gracias.
    Se pueden usar "Formatos condicionales con arreglos" ???
    Tengo una hoja con varios formatos condicionales pero se demora mucho, se podrían ejecutar con arreglos ?

  • @mariov.7817
    @mariov.7817 2 роки тому

    Excelente! Gracias Juan, buen ejemplo!

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @distanciometros
    @distanciometros 11 місяців тому +1

    Master genio. Gracias

  • @RiskBall
    @RiskBall 7 місяців тому +2

    Hola Guzmán! Lo primero de todo felicidades por tu canal! Tus videos me han sido de gran ayuda a la hora de crear mi propio proyecto web mediante apps script. En concreto este video me ha ayudado mucho a disminuir el tiempo de ejecución de varias de mis funciones pero aún necesito más... y es por lo que te pido ayuda ya que tengo un mapa mundial creado a partir de google slides utilizando la base de datos de una hoja de google. La idea es cambiar de color a las formas y cambiar los textos según el idioma seleccionado en las hojas de google pero la función tarda como 30 segundos y se hace muy tedioso para el usuario. La llamada a los objetos la hago mediante el id de los mismos pero tengo que hacer esta llamada al slidesapp con cada objeto y son mas de 100... Si me pudieras facilitar un correo para mandarte el proyecto te lo agradecería o si prefieres te podría pasar el mío. Te estaría eternamente agradecido si me pudieras ayudar con esta cuestión.

    • @JuanSGuzman
      @JuanSGuzman  6 місяців тому

      Hola!
      Interesante proyecto
      La verdad no domino mucho SlidesApp en este momento, este tema de arreglos funciona muy bien para tablas de Sheets pero en muchos otros casos no hay "atajos" y si te toca ir "uno por uno"
      Mi correo es sebastian@juansguzman.com para lo que necesites
      Saludos!

  • @jorgepelatos2696
    @jorgepelatos2696 2 роки тому +1

    Hola Juan, los videos están excelentes. me puedes aclarar, como elevar un número a una potencia usando código en apps Script?

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Creo que hay una funcion en javascript que se llama pow
      Saludos!

  • @anibalberrospichaca2264
    @anibalberrospichaca2264 7 місяців тому +1

    Excelente, me sirvió de mucho. Tengo una consulta: ¿ qué código de apps script funciona de igual manera que el "ScreenUptading" de VBA?

    • @JuanSGuzman
      @JuanSGuzman  4 місяці тому

      Creo que no hay un equivalente hasta donde tengo entendido
      Saludos!

  • @lacs83
    @lacs83 2 роки тому +2

    Todos aquellos que provengan de VBA/Excel deberían de saber que el manejo de arreglos es mas eficiente para procesar datos que acceder a celdas y lo mismo aplica para GAS/Sheets. En el manejo de arreglos es donde empieza a separarse un programador principiante de uno intermedio y eso sin mencionar que existen libros completos dedicados a estructuras de datos para optimizar la ejecución de aplicaciones. Otro observación por que seguir usando var desde el nuevo editor ya se puede utilizar let y const para tener mejores practicas con la declaración y uso de variables.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому +2

      Gracias Luis por tus aportes
      El tema con let y const es que para principiantes creo que es enredarlos un poco. Además que ni yo lo entiendo al 100% ;)
      Pero tu siendo un programador avanzado, tienes toda la razón, para proyectos profesionales, y dado que GAS ya lo acepta, ese el estándar que se debería usar.
      Gracias de nuevo!

    • @lacs83
      @lacs83 Рік тому +2

      @@JuanSGuzman todo lo contrario. Con let y const se evitan problemas futuros en cuanto al alcance (scoope) de variables. Si tengo tiempo hago un vídeo de ese tema... Pero sino sería un excelente video para ti canal. Saludos.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому +2

      @@lacs83 Pues me encantaría si lo haces y me lo compartes. La verdad, no creo tener aun el conocimiento para hacerle justicia a esos conceptos, pero si lo hago te lo paso, para que me des tu feedback, ya que sabes mucho mas del tema. De nuevo mil gracias por el aporte. Estas conversaciones construyen conocimiento. Saludos!

  • @juanantonioduran3772
    @juanantonioduran3772 2 роки тому +1

    Como siempre, soberbio. Un saludo.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @enriquecastaneda4614
    @enriquecastaneda4614 2 роки тому +1

    Tengo dos tablas una con columnas (numero de notas, venta, anticipo, saldo) que va de la nota 1 a la 1000 y en la otra tabla tengo las columnas (numero de notas, pago) esta ultima son los pagos de estas notas del dia. como puedo poner en la tabla 1 columna anticipo= la suma de esta columna, con la suma de la tabla 2 columna pago, tomando en cuenta que el codigo de la nota debe ser igual
    Gracias por los cursos, me ha ayudando a automatizar mi empresa,

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola Enrique
      Aquí te dejo un video donde lo hago
      ua-cam.com/video/-XM7wQ1_Xh8/v-deo.html
      Un gran saludo!

  • @JairChaux
    @JairChaux 2 роки тому

    Como es tu costumbre que gran vídeo, saludos . Cuando realizas un tutorial de App Sheets y ojala fuera de una lista de asistencia o control de entrada y salida empleados. Gracias de nuevo y ojala leas este comentario.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Colgado con AppSheet como con mil otros temas, jaja
      Saludos!

  • @ainalluna
    @ainalluna 2 роки тому +1

    ¡Muy bueno el video! He aprovechado para actualizar algún script. Tengo una duda, Si hago push a dos valores resultados.push([title],[h1]); como hago para escribir en la plantilla estos dos valores en columnas separadas. Solo he logrado que salga un bajo el otro en filas diferentes. No encuentro la respuesta o no sé buscar la pregunta correcta. ¿Me puedes orientar? ¡Gracias!

    • @ainalluna
      @ainalluna 2 роки тому +1

      Hola, ya vi el problema, resultados.push([title],[h1]); resultados.push([title, h1]); bien

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Excelente que lo hayas solucionado!
      Saludos!

  • @diegoforichi
    @diegoforichi 2 роки тому +1

    Nos puedes dejar el Link para la Academia al vídeo avanzado de los arreglos? Gracias.

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Claro que si
      Aqui va
      juansguzman.teachable.com/p/arreglos-google-apps-script
      Saludos!

  • @yulianplanas
    @yulianplanas 11 місяців тому +1

    Muchas gracias por el contenido, aprendí bastante de como mejorar mis scritps en gs. Tengo una duda, es posible hacer algo similar, si lo que intento es entrar a 10 url y necesito tomar 1 valor de al menos 10 paginas dentro de cada url, intente varias formas de optimizarlo, desde matrices bidimencionales y no logro bajar el tiempo de 4-5 minutos de ejecución

    • @JuanSGuzman
      @JuanSGuzman  11 місяців тому +1

      Ahi creo que no te va a funcionar el metodo de arreglos, porque igual le va tocar ir a cada una de las urls, no hay forma de "agarrar" todas de un "sopetón"
      Saludos!

    • @yulianplanas
      @yulianplanas 11 місяців тому +1

      @@JuanSGuzman Muchísimas gracias por responder

  • @Leover378
    @Leover378 2 роки тому +1

    El SetFormula estaría interesante verlo.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Ya lo vimos por encima en este video
      ua-cam.com/video/TqgLVszdRPQ/v-deo.html
      Saludos!

    • @DsCanalS
      @DsCanalS Рік тому +1

      @@JuanSGuzman me gustaría aprender arreglo que aplique formulas no arrastrar formula (aunque esta bueno es muy lento), saludos

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      @@DsCanalS Ya estoy haciendo un video, pero aquí te dejo otro que te puede servir
      ua-cam.com/video/TqgLVszdRPQ/v-deo.html
      Saludos!

  • @musicfor1872
    @musicfor1872 2 роки тому +1

    Impresionante

  • @feliperoletto
    @feliperoletto 2 роки тому +1

    Espectacular

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Mil gracias por las palabras!
      Saludos!

  • @ronaldgareck6703
    @ronaldgareck6703 7 місяців тому +1

    Como puedo sumar totales de filas filtradas en apps script?, exitos!

    • @JuanSGuzman
      @JuanSGuzman  Місяць тому

      Algo asi como la función subtotal?
      Saludos!

  • @pedro-jesuspastormunoz9792
    @pedro-jesuspastormunoz9792 Рік тому

    Me Dan muchos problemas el desarrollo en appscriot en rl navegador de una tablet Android. Hay slguna app para desarrollar en Google appscript? Con visual studio? Gracias.

  • @fcojesusgutierrez
    @fcojesusgutierrez Рік тому +1

    Como podría hacer esos arreglos, pero con una condición "if", es decir, que una vez que comienza a recorrer la tabla, realice la operación en función del valor de una casilla de verificación?. Si está marcada que haga la operación, y si no está marcada que no la haga. Gracias!!!

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Lo anoto para la segunda parte.
      Saludos!

  • @lucianopessanha7437
    @lucianopessanha7437 2 роки тому +1

    Adorei o vídeo.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      Gracias a ti por tomarte el trabajo de comentar!
      Saludos!

  • @juanjosecanorodriguez4518
    @juanjosecanorodriguez4518 2 роки тому +1

    Dios Guzman, en un video vi un truco tuyo para cuando sucedia que el código va más rápido que la hoja. Hablaste del sleep, pero encontraste otro mejor que era algo de GETRANGE. Pero ahora no encuentro el video. ¿Me puedes recordar esto?
    Gracias!

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому +1

      Hola!
      Yo tampoco me acuerdo, jaja
      Revísate este, que creo que es
      ua-cam.com/video/t64C5GfkA70/v-deo.html
      Saludos!

    • @juanjosecanorodriguez4518
      @juanjosecanorodriguez4518 2 роки тому +1

      @@JuanSGuzman si ese es, gracias!+

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      @@juanjosecanorodriguez4518 Excelente!

  • @e3tdigital
    @e3tdigital 2 роки тому +1

    En el video habló de un curso más avanzado de arreglos, pero no lo encuentro

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Ese curso lo encuentras en mi academia
      juansguzman.com/academia
      Un gran saludo!

  • @santimaspero6250
    @santimaspero6250 Рік тому

    Hola Juan, tengo una pregunta, como puedo hacer si la multiplicación la tengo que hacer en filas específicas, porque si yo pego el arregloventas en una columna, los valores anteriores se van a ver sobreescritos. Como podría hacer en ese caso?

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Aquí te dejo un video que te puede dar luces
      ua-cam.com/video/TqgLVszdRPQ/v-deo.html
      Saludos!

  • @JotaXPeaR
    @JotaXPeaR Рік тому

    Hola!
    Arreglo es más rápido que QUERY o es igual?
    Se me está poniendo muy lenta la hoja 😓

  • @carlosnarviz2464
    @carlosnarviz2464 2 роки тому +1

    ¿como hago parar que no se duplique datos al agregar un dato en hoja de cálculo con google app script?

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Nos tocaria cambiar un poco el código
      Aquí te dejo un video similar pero con Forms
      ua-cam.com/video/JSjEp75zaNA/v-deo.html
      Saludos!

  • @El_Flipy
    @El_Flipy 2 роки тому

    Hola buenos días desde España.
    Tengo una hoja que bastantes datos y un script que envía correos si se cumplen varias condiciones. Al principio iba bien por que tenia pocas filas, pero ahora ya no le da tiempo a recorrer todas las filas y termina el tiempo de ejecución. ¿Con este tema de arreglos se pueden enviar también correos? ¿Cómo podría hacerse?
    Gracias.

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Si se puede
      En vez de usar un for, usas un forEach recorriendo el arreglo.
      Pensé que lo tenía en algún video.
      Lo anoto para uno próximo
      Saludos!

    • @El_Flipy
      @El_Flipy 2 роки тому +1

      @@JuanSGuzman Gracias por tu respuesta, he conseguido enviar los correos peeeeeero.... ahora no consigo poner una casilla de verificación en la fila desde la que se envió el correo. Me lo pone en todas las filas. ¿Podrías ayudarme por favor?
      Gracias

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      @@El_Flipy Esa es más difícil, porque te toca crear un nuevo arreglo, o ahi si te tocaría ir linea por linea para chequear
      Saludos!

  • @abdullahquhtani4247
    @abdullahquhtani4247 2 роки тому +2

    We need this tutorial in ENGLISH 😤😡

  • @kalolo22
    @kalolo22 Місяць тому +1

    tengo una tabla con mas de 500000 registros, cuando lo recorre explota el google apps scripts :(((

    • @JuanSGuzman
      @JuanSGuzman  Місяць тому

      jaja
      500.000 registros es muchísimo para Sheets. Se me hace raro que te este funcionando sin problema
      Que error te sale, el de que se pasó el tiempo?
      Saludos!

    • @kalolo22
      @kalolo22 Місяць тому +1

      @@JuanSGuzman no me lo corre, para ello tuve que hacerlo a través de un query, le pedi que lo incerte en una celda y que luego me capture el valor 🤓

  • @andresdaza1028
    @andresdaza1028 2 роки тому +1

    Super la explicacion pero no he podido optimizar el siguiente codigo :( alguien que me ayude por favor:
    function carpetaCursos() {
    var libro = SpreadsheetApp.getActiveSpreadsheet()
    var hoja = libro.getSheetByName("Cursos")
    var filas = hoja.getLastRow();
    for (var i = 2; i < filas + 1; i++) {
    var grado = hoja.getRange(i, 1).getValue();
    var carpetaGrado = hoja.getRange(i, 2).getValue();
    var nombreCurso = hoja.getRange(i, 3).getValue();
    var carpetaCurso = DriveApp.createFolder(nombreCurso);
    var cursoId = carpetaCurso.getId();
    var carpetaGradoId = DriveApp.getFolderById(carpetaGrado);
    hoja.getRange(i, 4).setValue(cursoId);
    carpetaCurso.moveTo(carpetaGradoId);
    }
    }

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому +1

      Hola!
      Algo asi:
      function carpetaCursos() {
      var libro = SpreadsheetApp.getActiveSpreadsheet()
      var hoja = libro.getSheetByName("Cursos")
      var filas = hoja.getLastRow();
      var datos= hoja.getRange(2, 1,filas-1,3).getValues();
      var nuevaCol=[]
      datos.forEach(fila=>{
      var grado = fila[0]
      var carpetaGrado = fila[1]
      var nombreCurso = fila[2]
      var carpetaCurso = DriveApp.createFolder(nombreCurso);
      var cursoId = carpetaCurso.getId();
      var carpetaGradoId = DriveApp.getFolderById(carpetaGrado);
      nuevaCol.push([cursoId])
      carpetaCurso.moveTo(carpetaGradoId);
      })
      hoja.getRange(2,4,filas).setValues(nuevaCol)
      }
      Saludos!

    • @andresdaza1028
      @andresdaza1028 2 роки тому +1

      @@JuanSGuzman Muchas gracias por su colaboración.

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      @@andresdaza1028 Gracias a ti!

  • @manuelfuentes7833
    @manuelfuentes7833 2 роки тому +1

    Hola Juan, me encatna tus videos y me han servido mucho, te concí en tu página web
    tengo dos dudas, la primera es, tengo este codigo:
    function onEdit() {
    var archivo = SpreadsheetApp.getActiveSpreadsheet();
    var hojaDatos = archivo.getSheetByName(«Reembolsos 15/10/2021»);
    var filaActiva = hojaDatos.getActiveCell().getRow();
    var columnaActiva = hojaDatos.getActiveCell().getColumn();
    var hojaListas = archivo.getSheetByName(«Base de listas»);
    if(filaActiva>1 && columnaActiva ==1) {
    var detalles = hojaListas.getRange(2,8,hojaListas.getLastRow());
    var desplegable = SpreadsheetApp.newDataValidation().requireValueInRange(detalles).build();
    hojaDatos.getActiveCell().offset(0,29).setDataValidation(desplegable);
    }
    Pero necesito que en el if también tome en cuenta que sea solo fecha, eso es posible?
    Por otro lado, se puede resaltar toda la fila de la celda seleccionada? Como en excel.
    Gracias de antemano
    Saludos.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      Hola!
      En cuanto a la primera pregunta, si se puede
      Se podría hacer con algo asi
      if(typeOf hojaDatos.getActiveCell().getValue()=='object')
      Saludos!

  • @arnifuentes7055
    @arnifuentes7055 2 роки тому

    gracias por este aporte Juan!!!

    • @JuanSGuzman
      @JuanSGuzman  2 роки тому

      Hola!
      Gracias a ti por tomarte el trabajo de comentar!
      Saludos!

    • @arnifuentes7055
      @arnifuentes7055 2 роки тому

      @@JuanSGuzman una duda crack, ¿por qué puede ocurrir que se ejecute un código en un libro y demore, por ejemplo, 1 minuto, y usando el MISMO código en un libro DISTINTO se demore 4 minutos?

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      @@arnifuentes7055 Hmmm
      Habría que mirar que hace el código.
      Lo estas ejecutando en dos archivos de tu propiedad?
      En el mismo computador?
      Saludos!

    • @arnifuentes7055
      @arnifuentes7055 Рік тому

      @@JuanSGuzmanmuchas gracias. Estoy ejecutando el script en un archivo con mi cuenta personal de gmail, y por otro lado estoy ejecutando este mismo script en otro archivo con el correo que me proporcionó la empresa, todo esto en el mismo computador.

    • @JuanSGuzman
      @JuanSGuzman  Рік тому

      @@arnifuentes7055 Hmmm, no sabría decirte. Dependería si es el mismo usuario, si la base es mas pesada. Interesante! Saludos!