Creación avanzada de eventos de Google Calendar desde Google Sheets

Поділитися
Вставка
  • Опубліковано 8 лис 2022
  • Hoy vemos como crear eventos de Google Calendar con duración personalizada, invitados, invitaciones, ubicación y descripción, todo desde Google Sheets
    👍 Si te ha gustado este video, te encantará el curso gratis "Aprende Google Sheets en 2 horas". Aquí puedes obtener acceso juansguzman.com/cursogratis
    📋 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 una serie de cursos de Integración de Google Calendar y Google Sheets, asi como más de 75 cursos completos de Sheets, Forms y Apps Script. Aquí puedes verlo juansguzman.com/curso/29-goog...
    📝 Puedes encontrar este tutorial en forma escrita aquí
    juansguzman.com/crear-eventos...
    ☎️ Si necesitas asesoría personalizada, ofrezco algunas horas a la semana de este servicio. juansguzman.com/consultoria
    🔔 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.com/boletin
    ➤Patreon: juansguzman.com/patreon
    ➤Telegram: juansguzman.com/telegram
    ➤Instagram: juansguzman.com/instagram
    ⓕ - Facebook: juansguzman.com/facebook
    ➤Tiktok: juansguzman.com/tiktok
    𝕏 - (Twitter): juansguzman.com/twitter
    Cualquier sugerencia, pregunta o inquietud, te invito a comentar más abajo

КОМЕНТАРІ • 92

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

    Interesante, estaba esperando algo como esto.

  • @nicofrini9865
    @nicofrini9865 5 місяців тому +2

    Eres el mejor!

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

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

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

    Espectacular como siempre Juan! Una ventaja que encontré en uno de tus tutoriales anteriores de este tema fue enviar con el check al final como activador ya que el botón que agregaste acá no aparece en Google sheets de celular.
    Muchas gracias por retomar el tema, quedamos a la espera de la parte 2. Saludos 💪💪

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

      Hola!
      Que amables palabras! Mil gracias!
      Saludos!

  • @user-zv2zr3ei1l
    @user-zv2zr3ei1l Рік тому +1

    Me sirvio un monton, realmente muy bien explicado, yo tengo una app en glide y uso sheets como base, y cuando hago un cambio en en la app y como lo hace en el sheets, se ejecuta el appscript, genial me funciono

  • @user-hf3vr3vq9k
    @user-hf3vr3vq9k 11 місяців тому +1

    Gracias

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

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

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

    Voy a revisar tus videos anteriores para complementar este. Ya que lo que quiero es que cada vez que se reciba una respuesta de un formulario se cree automáticamente el calendario, enviando las invitaciones pero sobre todo que realicen varias notificaciones, bien sea por correo o notificación móvil y si se seleccionar el calandario entre todos los que tengo, eso seria fantabulozo!

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

      Jaja, yo creo que se puede
      Saludos!

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

      Hola, lo pudiste resolver?

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

    Hola Juan !! Eres un genioooo total. Muy didáctico !! Muy claro, muy preciso !!! Te felicito !!! Tengo sólo una consulta: he generado una lista de invitados directamente en una celda con los emails, separados por comas. Todo funciona perfecto, pero al modificar el evento, no hay forma de agregar esa celda con los mails separados por coma. Si es uno sólo el .addGuest () funciona, pero con varios concatenados, no. Qué puedo hacer? Debo eliminar el evento? Gracias

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

    Excelente, muchas gracias por el video! Podrías hacer en el próximo video como eliminar solamente lo seleccionado o la selección única de la celda? Para no borrar cosas que no se deseen y como bloquear cuando ya hay un evento creado en el mismo horario?

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

      Hola!
      Claro que si
      Ya lo anoto
      Saludos y gracias por la sugerencia!

  • @user-dr3zm4iy8c
    @user-dr3zm4iy8c 6 місяців тому +1

    Holaaa, excelente video super bien explicado, solo que la función crear evento no me generó la pestaña en Google Sheet =( todo se ejecutó bien y no apareció la ventana de Evento, que pudo haber sido?

  • @carloshernanmoraolarte8036
    @carloshernanmoraolarte8036 2 місяці тому +1

    Muy bien explicado muchas gracias. Una pregunta, se puede crear un calendario desde el mismo script y a ese calendario agregarle estos eventos? Espero hacerme entender.

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

      Claro que si
      En el CalendarApp hay una opción de createCalendar()
      Saludos!

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

    Hola ten hago una consulta, si quiero tener 2 fechas diferentes con duración? Tienes algún vídeo

  • @GustavoRamirez-fu8qs
    @GustavoRamirez-fu8qs 3 місяці тому +1

    Excelente Juan!! Siempre ácudo a tu canal para avanzar en mis proyectos! Cada video es excelente!!! Solo tengo un tema que no encuentro en ningún canal, y es el poder programar Out of office de días de descansos de un Grupo de personas, es decir , declinar meeting, y que realmente salga como Oit of office, tendrás algún vídeo que me regales el link?

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

      Interesante
      Nunca lo he hecho pero lo pongo "en la cola"
      Saludos!

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

    que buen video, se puede traer la respuesta del invitado si acepta o rechaza la invitación ?

  • @MesmerCastro
    @MesmerCastro 11 місяців тому

    Hola Juan, muchas gracias por tanta info de calidad. Quería preguntarte si es posible importar y exportar con referencia a diferentes calendarios. Es decir en mi cuenta de google calendar tengo distintos calendarios creados por área de trabajo (Dinero, familia, Salud, etc), entonces quisiera exportar e importar usando esos calendarios.

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

      Hola!
      Claro que si
      Usas CalendarApp.getCalendar(idCalendario)
      El id del Calendario lo encuentras en la configuración del calendario en la sección "Integrar calendario"
      Saludos!

  • @estebanreyessuarez492
    @estebanreyessuarez492 11 місяців тому

    Buenas noches me parece especatacular tu video pero me surge una duda, tengo creado el evento pero si quiero crear diferentes enventos en la misma hoja para despues pasarlos a Calendar tengo que crear una función para cada uno de estos.

  • @tonioteromurias-rj1kg
    @tonioteromurias-rj1kg 3 місяці тому +1

    Buenas tardes, en primer lugar felicitarme de nuevo por sus Videos.
    Respecto a este vídeo,como podríamos elegir el id del calendario. Tengo varios calendarios compartidos, por departamentos, y necesitaría elegir en qué calendario crear el evento.
    Muchas gracias por compartir sus conocimientos y hacernos la vida un poco más fácil!

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

      Hola!
      Mil gracias por tus palabras
      Seria algo asi
      var calendario=CalendarApp.getCalendarById(TU_ID)
      calendario.createEvent....
      Saludos!

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

    Gracias por tu valioso aporté.. me gustaría saber si es posible hacer que Los datos que Google Form envía al Sheet, se programen automáticamente en Calendar. Por ejemplo: hacer una cita por medio de Google Form.. y que el resultado se refleje automáticamente en mi Calendar

  • @7ideasdigitales388
    @7ideasdigitales388 Рік тому

    Muy simple y práctico. Muchas Gracias!!!
    Pregunta: Como podemos elegir un calendario nuestro o compartido con nosotros para agregar esos eventos???

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

      Hola!
      con CalendarApp.getCalendarById()
      Y creas los eventos en vez de desde CalendarApp, desde el nuevo calendario
      var calendario=CalendarApp.getCalendarById()
      calendario.createEvent()
      Saludos

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

      @@JuanSGuzman excelente, hice los ir me recomiendas y ha funcionado muy bien. Muchísimas gracias por responder y felicitaciones por la increíble labor que haces . 👏👏👏👏

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

      @@rdegollada Excelente!

  • @keilaorieta9131
    @keilaorieta9131 3 місяці тому +1

    Hola! Es posible crear eventos de día completo con Google sheet y apps script en calendar?
    Pero que se genere en calendar un evento del tipo "todo el día" para que figure arriba en miñatura y no que ocupe espacio en el cuadro temporal general de dicho día.
    Yo hice pero poniendo fecha inicial 00:00 a 23:59 pero se vuelve muy engorroso visualmente

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

      Hola!
      si no restoy mal hay un metodo especifico para eventos de todo el dia
      .createAllDayEvent(title, startDate, endDate)
      Saludos!

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

    Hola, Juan. Y si en lugar de CalendarApp quisiera generar una tarea en Google Tasks, ¿Cuál sería la instrucción? Saludos y gracias por tu contenido! 🎉🎉

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

      Nunca lo he hecho!
      Lo dejo de tarea
      Saludos!

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

    muchas gracias.... excelente video.
    hay posibilidad de a una reunion establecer una sala de google meet, (podria ser enviada en la invitacion?). Saludos

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

      Hola!
      Hmmm
      Interesante.
      No lo se, pero lo averiguo
      Saludos!

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

    Hola! Genial! Te consulto si se puede crear el evento enviando las invitaciones pero sin Google Meet, no me aparece la función de crear el evento sin incluir google meet. Es posible?

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

      Hola Gerardo
      Complicado!
      No sabría, pero lo investigo
      Saludos!

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

    Estan excelentes tus tutoriales amigo, queria preguntarte 2 cosas hay modo de que se ejecuten al abrir el documento de Sheets los comandos para que sea una carga automática y igual que no se dupliquen en calendar los eventos que ya se hayan creado ?

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

      Hola!
      Usas onOpen() para esto
      Hay que tener cuidado porque algunos servicios no son compatibles con onOpenSaludos!Saludos!sl

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

      @@JuanSGuzman Gracias, el onOpen lo usas como nueva función verdad, estoy trabajando con algo en específico y ya me tope estos temas que el evento se sobre escribe cada que le doy ejecutar y que me gustaría fuera más automático para no depender hacer click recargar la agenda.

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

      @@JuanSGuzman function onOpen(){
      crearEventos();
      }
      function crearEventos() {
      }
      Esta ejecuta la función pero no de forma automática, igual sigo trabajando para que sea completamente automática me falta el no sobre escribir.

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

      @@KAMPOZONE En los casos de trabajar con CalendarApp lo mejor no es usar onOpen sino el activador al abrirse que creas manualmente. Ahí puedes incluir todas las funciones que quieras
      Saludos!

  • @user-km6co5tx2l
    @user-km6co5tx2l 9 місяців тому

    Hola Juan. Ví tu video esperando que mostraras como adjuntar archivos, ya que es la parte que no he podido resolver en mi caso. Te comparto como lo ingresé en mi código:
    var event = Calendar.createEvent(eventTitle, startDate, endDate, {
    description: description,
    location: location,
    guests: installerEmail,
    sendInvites: false,
    attachments: [{
    fileId: fileId,
    title: fileName
    }]
    })
    Cabe resaltar que previamente se crearon las variables fielId y fileName las cuales contienen la información correspondiente a sus nombres.

    • @user-km6co5tx2l
      @user-km6co5tx2l 9 місяців тому

      Adicionalmente, quisiera saber si aparte de la suscripcion mensual que vendes para el acceso a tus cursos, tienes otros servicios, como por ejemplo una reunion contigo para revisar como podria optimizar los codigos que he realizado para mis proyectos. Quedo atento, saludos!

  • @yuntax7852
    @yuntax7852 10 місяців тому +1

    Muchas gracias Juan, alguna forma de que no cree el enlace de meet? Saludos!!!!

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

      No sabría como la verdad. No hay ningun médtodi
      Saludos!

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

    Hola, muchas gracias por estos videos, me han ayudado mucho para un problema que tenemos. Me vi todos tus videos sobre este tema para crear una solución pero me veo atrapado en dos temas:
    1. Cuando creo todos los eventos no se detiene y sigue creando infinitos eventos aun cuando no hay información para crearlos. No se detiene en la ultima fila con información, hay que detener el script de forma manual.
    2. Tengo que tener la hora de inicio y termino en columnas separadas y no logro integrar eso en el código 😫.
    Revise tu pagina pero no se si esas dudas se resuelven en tu academia.
    Quedare atento para ver si me respondes.
    Saludos!

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

      Hola
      Respecto a la primera duda
      Se puede deber a que tengas algún desplegable o algún arrayformula en la hoja donde tienes los eventos
      Saludos!

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

      @@JuanSGuzman si es eso 😅

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

      @@iNachiYoma Excelente!

  • @nestorspencer4820
    @nestorspencer4820 9 місяців тому +1

    Tengo una pregunta cómo utilizo el echo de colocar un valor a La Fila para poder crear N cantidad de eventos al mismo tiempo ?

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

      Hmmm. Te tocaria usar un bucle
      Algo asi como
      let numEventos=10
      for(i=1;i

  • @sahbatmusicsantiagobarrera7615
    @sahbatmusicsantiagobarrera7615 5 місяців тому

    Hola, gracias por tu video, veo que siempre se genera un enlace automático para Google Meet, hay manera de evitar que se genere automáticamente? lo digo porque me gusta usar Google calendar para agendar mis reuniones pero prefiero otra plataforma para las reuniones

    • @sahbatmusicsantiagobarrera7615
      @sahbatmusicsantiagobarrera7615 5 місяців тому

      Ya logré eliminar la creación del enlace de Meet pero por alguna razón ya no envía las invitaciones a los correos. Alguna idea?

  • @user-uy5hh2dm9c
    @user-uy5hh2dm9c Рік тому

    No va el link del curso Google sheets y Google Calender, hay otra forma de acceder a tus cursos, son muy interesantes

  • @Brunooalvarezz
    @Brunooalvarezz 8 місяців тому +2

    Hola hice todo, pero ahora quiero que me tome toda la columna, no solo 1, como hago? gracias

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

      Hola
      Aquí te dejo un video donde lo hago
      ua-cam.com/video/N29MIWRc0mo/v-deo.html
      Saludos!

  • @user-wd8hc7oi6x
    @user-wd8hc7oi6x 13 днів тому +1

    Tip amateur: si buscas crear mas de un evento a la vez y ya hiciste este codigo, solo copia y pegalo debajo de si mismo las veces que necesites 1 por fila con evento nuevo y solo modifica el numero de la fila de c/u y listop

    • @JuanSGuzman
      @JuanSGuzman  12 днів тому

      Gracias por el aporte!
      Tambien pueden usar este video
      ua-cam.com/video/N29MIWRc0mo/v-deo.html
      Saludos!

  • @8bits_Warrior
    @8bits_Warrior Рік тому +1

    Excelente vídeo, muy descriptivo, pero hay algo que no he podido encontrar y es que si yo quiero enviar a muchos correos a la vez (30 a 50), como haría yo para concatenarlos en una misma celda y que esta celda los tenga separados por comas para que Google Calendar envíe las notificaciones o invite a las personas que quiero. ¿Hay alguna forma de crear un script, por ejemplo, que me permita seleccionar qué correos quiero anexar de una lista determinada y que los concatena en una sola celda para no tener que crear muchas columnas seleccionando correos?

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

      Hola!
      Interesante. Así exactamente no tengo nada, pero se que si se podría
      Saludos!

    • @8bits_Warrior
      @8bits_Warrior Рік тому

      @@JuanSGuzman que alternativa tenemos, por qué tocaría agregar 50 columnas para ese fin?

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

      @@8bits_Warrior Se podrían separar por comas en una sola celda. En realidad esa sería la forma más fácil tanto para el Sheets, como para el código
      Saludos!

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

    Buenas Juan, ¿sabes si hay un límite de activadores que puede tener asociados un archivo o una cuenta de Gmail?, actualmente tengo varios y me llegan correos de que se excedió el tiempo de ejecución, sin embargo, siempre se han ejecutado de manera correcta

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

      Yo creo que no necesitas tants. A veces puedes agrupar todo lo de un activador en una sola función
      Saludos!

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

      @@JuanSGuzman esque necesito que se ejecuten en tiempos distintos

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

      @@oscar_urp Pero si cada activador es diferente, el tiempo es independiente. Deberias mirar en que activador exactamente te esta dando el error. De pronto no es roblema de los activadores, sino de la funcion
      Saludos!

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

      @@JuanSGuzman veo que el problema que mencioné se presenta solamente en activadores que mandan correos electrónicos, puede que ese sea un factor, aunque curiosamente tengo uno que tiene la misma estructura y lógica y no me da problemas

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

      @@oscar_urp Mandan muchos correos?

  • @el_david6139
    @el_david6139 8 місяців тому +1

    Hola sr. Juan, he seguido toda esta serie y ahora tengo un problema que no sé resolver.
    Mi celda de invitados son nombres y no direcciones de correo, pero tengo una hoja secundaria para la validación de datos en la que tengo asociados nombres con e-mails.
    ¿Como podría crear un nuevo array en el que se vayan incluyendo los e-mails de los invitados en base a la celda donde aparecen sus nombres separados por comas, a la hora de crear cada evento?
    Si pudiera ayudarme se lo agradecería mucho. Un saludo.

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

      Esta compleja
      Primero te toca separar los nombres con comas, puedes usar un split
      Despues usas un forEach por el arreglo resultante del split y a cada uno vas a buscar el mail
      PAra buscar el mail traes el arreglo donde estan los mails, lo conviertes a lista con map
      A ese arreglo le haes un indexOf con cada nombre
      El arreglo resultante es el que vas a incluir en addGuests()
      Saludos!

    • @el_david6139
      @el_david6139 8 місяців тому +1

      @@JuanSGuzman muchas gracias por la atención. Los nombres ya están separados por comas. Le echaré un vistazo enseguida a como implementar esas indicaciones que me sugieres. Un abrazo.
      P.D. me están resultando de gran ayuda tus videos con la creación de un proyecto de una agenda laboral con múltiples eventos diarios para uno o varios empleados. Así que de nuevo, mil gracias por la dedicación. 😉

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

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

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

    Con eso te aparecen recordatorios también ???

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

      Si lo tienes programado como default en tu calendario
      Saludos!

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

      @@JuanSGuzman Gracias, voy a investigar. Seria bueno que envíe un email del calendario

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

      @@roquefabian por ahora solo envía el email de invitación, pero lo tendré en cuenta para la parte 2 (si la hay)
      Saludos!

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

      @@JuanSGuzman Eso sería un golazo! Muchas gracias

  • @takegains
    @takegains 10 місяців тому

    i como separo la hora de inicio de la fecha de inicio :/ me gustaría poner lo en otra casilla

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

      Algo así
      function crearEvento() {
      Logger.log(calendario.getTimeZone())
      var hoja = libro.getActiveSheet();
      var nombre = hoja.getRange("A2").getValue();
      var fechaIni = hoja.getRange("B2").getValue();
      var horaIni=hoja.getRange("C2").getValue();
      fechaIni.setHours(horaIni.getHours()+1)
      var fechaFin = hoja.getRange("D2").getValue();
      var horaFin=hoja.getRange("E2").getValue();
      fechaFin.setHours(horaFin.getHours()+1)
      calendario.createEvent(nombre, fechaIni, fechaFin)
      }

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

    Hola Juan, te hablé por facebook pero no estoy segura si te llegan los mensajes. Por favor tendras algun numero de whatsappo o un email para consultar por tus servicios. Gracias desde ya.

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

    VIDEOS ANTERIORES DE CALENDAR 👇
    PARTE 1 - ua-cam.com/video/NJSu56fsW7U/v-deo.html
    PARTE 2 - ua-cam.com/video/ENrf8USt4_w/v-deo.html
    PARTE 3 - ua-cam.com/video/N29MIWRc0mo/v-deo.html