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

Поделиться
HTML-код
  • Опубликовано: 13 сен 2024
  • 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.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 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.co...
    📝 Puedes encontrar este tutorial en forma escrita aquí
    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

Комментарии • 97

  • @nicofrini9865
    @nicofrini9865 7 месяцев назад +4

    Eres el mejor!

    • @JuanSGuzman
      @JuanSGuzman  7 месяцев назад

      Hola!
      Que amables palabras! Mil gracias!
      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?

  • @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

  • @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!

  • @Leover378
    @Leover378 Год назад +1

    VIDEOS ANTERIORES DE CALENDAR 👇
    PARTE 1 - ruclips.net/video/NJSu56fsW7U/видео.html
    PARTE 2 - ruclips.net/video/ENrf8USt4_w/видео.html
    PARTE 3 - ruclips.net/video/N29MIWRc0mo/видео.html

  • @carloshernanmoraolarte8036
    @carloshernanmoraolarte8036 4 месяца назад +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  4 месяца назад +1

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

  • @erickemmanuelmadera2751
    @erickemmanuelmadera2751 Год назад +1

    Interesante, estaba esperando algo como esto.

  • @Brunooalvarezz
    @Brunooalvarezz 10 месяцев назад +2

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

    • @JuanSGuzman
      @JuanSGuzman  10 месяцев назад

      Hola
      Aquí te dejo un video donde lo hago
      ruclips.net/video/N29MIWRc0mo/видео.html
      Saludos!

  • @tonioteromurias-rj1kg
    @tonioteromurias-rj1kg 5 месяцев назад +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  5 месяцев назад

      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

  • @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!

  • @GustavoRamirez-fu8qs
    @GustavoRamirez-fu8qs 5 месяцев назад +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  5 месяцев назад

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

  • @user-hf3vr3vq9k
    @user-hf3vr3vq9k Год назад +1

    Gracias

    • @JuanSGuzman
      @JuanSGuzman  Год назад

      Hola!
      Gracias a ti por tomarte el trabajo de comentar!
      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!

  • @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

  • @JuanDavidDiaz-c8f
    @JuanDavidDiaz-c8f 11 дней назад +1

    Hola Juan, estuve viendo tus videos, tengo un problema al momento de crear el evento, me lo crea un dia antes de la fecha que tengo en mi sheet, sabes que pueda estar pasando? saludos

    • @JuanSGuzman
      @JuanSGuzman  11 дней назад

      Hmmm
      Que raro, de pronto es la zona horaria. Verifica tanto en la configuración de Sheets como en la configuración de Apps Script que tengas la zona horaria correcta
      Saludos!

  • @keilaorieta9131
    @keilaorieta9131 6 месяцев назад +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  5 месяцев назад

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

  • @JuanDavidDiaz-c8f
    @JuanDavidDiaz-c8f 11 дней назад +1

    Hola Juan como estas, estuve siguiendo tu video, pero tengo un problema que no he podido solucionar, me crea el evento un día antes de la fecha que pongo, sabes que puede estar pasando? Saludos

    • @JuanSGuzman
      @JuanSGuzman  11 дней назад

      Hmmm
      Que raro, de pronto es la zona horaria. Verifica tanto en la configuración de Sheets como en la configuración de Apps Script que tengas la zona horaria correcta
      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!

  • @StephanieSalcedo-g5i
    @StephanieSalcedo-g5i 9 месяцев назад +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?

    • @JayroRodriguez
      @JayroRodriguez 23 дня назад

      tendrías que tomar en cuenta donde se ponen las "," o las "."

  • @gavn79
    @gavn79 8 месяцев назад

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

  • @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!

  • @yuntax7852
    @yuntax7852 Год назад +1

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

    • @JuanSGuzman
      @JuanSGuzman  Год назад

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

  • @fabianc20
    @fabianc20 Год назад

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

  • @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  Год назад

      @@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!

  • @nestorspencer4820
    @nestorspencer4820 Год назад +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  Год назад

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

  • @MesmerCastro
    @MesmerCastro Год назад

    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  Год назад +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!

  • @user-wd8hc7oi6x
    @user-wd8hc7oi6x 2 месяца назад +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  2 месяца назад

      Gracias por el aporte!
      Tambien pueden usar este video
      ruclips.net/video/N29MIWRc0mo/видео.html
      Saludos!

  • @estebanreyessuarez492
    @estebanreyessuarez492 Год назад

    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.

  • @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!

  • @sbm-e2d
    @sbm-e2d 11 месяцев назад

    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.

    • @sbm-e2d
      @sbm-e2d 11 месяцев назад

      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!

  • @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!

  • @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

  • @sahbatmusicsantiagobarrera7615
    @sahbatmusicsantiagobarrera7615 8 месяцев назад

    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 8 месяцев назад

      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?

  • @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!

  • @el_david6139
    @el_david6139 10 месяцев назад +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  10 месяцев назад

      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 10 месяцев назад +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  10 месяцев назад

      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

  • @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?

  • @takegains
    @takegains Год назад

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

    • @JuanSGuzman
      @JuanSGuzman  Год назад

      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.