Respuestas:
Aunque Google Calendar no le permite crear o modificar reglas de recurrencia arbitrarias, la especificación iCalendar que utiliza y entiende es bastante robusta a este respecto.
Cree un archivo ICS con una regla de recurrencia personalizada (RRULE). Por ejemplo, para un evento de todo el día el primer, tercer y quinto viernes de cada mes, a partir del 2 de marzo de 2012:
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART;VALUE=DATE:20120302
DTEND;VALUE=DATE:20120302
RRULE:FREQ=MONTHLY;INTERVAL=1;BYDAY=1FR,3FR,5FR
DESCRIPTION:
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Event on the first, third, and fifth Fridays.
TRANSP:TRANSPARENT
END:VEVENT
END:VCALENDAR
Para importar el archivo ICS (actualizado en junio de 2018): haga clic en el ícono de ajustes y seleccione "Configuración", luego elija "Importar y exportar" en el menú. ( Aquí hay un enlace directo a partir de junio de 2018 ). En "Importar", seleccione su archivo ICS y cárguelo en el calendario deseado.
Para este ejemplo, Google Calendar analiza el RRULE correctamente e incluso describe la recurrencia como "Mensualmente los viernes de las semanas 1, 3 y 5 del mes":
Por supuesto, no podrá ajustar la regla de recurrencia personalizada desde Google Calendar, a menos que desee reemplazar la regla de recurrencia por completo con una de las opciones estándar. De lo contrario, tendrá que eliminar el evento, modificar su archivo ICS y volver a importar. Aún debe poder realizar otros cambios en el evento dentro de Google Calendar, como cambiar el nombre, pasar a otro calendario, etc.
Si esto ayuda, es posible que desee leer más sobre la flexibilidad que ofrecen las reglas de recurrencia personalizadas en la especificación iCalendar .
Processed one event. Successfully imported 0 events.
que también intenté agregar 'VERSIÓN: 2.0' y 'PRODID: [mi-apellido-nombre]'. Cada cambio dio el mismo resultado.
La única forma práctica de lograr esto es crear tres eventos separados, uno que se repita el 1er viernes, uno que se repita el 3er viernes y otro el 5to viernes (aunque no todos los meses tendrán un 5to viernes).
Actualización : se me ocurre otro método: necesitaría crear 12 citas periódicas separadas, una para cada mes, que comienza el primer viernes del mes, se repite cada dos semanas y finaliza el último día del mes. Entonces golpeará, para ese mes, el primero, tercero y, si existe, el quinto viernes.
Algunos de los métodos abordados aquí ya no funcionan, aunque la respuesta aceptada funciona bien.
Aquí hay otra forma: cree un evento que se repita cada x día de la semana para cada repetición que necesite.
Aquí está el proceso: cree un evento en el día de la semana correcto, luego vaya a repetición -> mensual -> repetir cada x día de la semana. Puede duplicar el evento para acelerar la creación de otros eventos.
Para repetir cada quinto día de la semana, deberá utilizar una aplicación que aproveche la API del calendario de Google que permite la repetición cada quinto domingo. Utilizo el bien hecho Business Calendar 2 para este propósito, pero hay otros que también funcionan.
Consulte la foto adjunta para ver pruebas de que la API de Google admite este comportamiento
Ningún otro método funcionó para mí, excepto la importación de archivos ICS. Mi necesidad era especificar qué sucedió en el horario de un médico en días de semana particulares en la quinta semana de cualquier mes. Si necesita una quinta semana, no dude en utilizar este archivo ICS modificado como ejemplo:
BEGIN:VCALENDAR
BEGIN:VEVENT
DTSTART;VALUE=DATE:20190430
DTEND;VALUE=DATE:20190430
RRULE:FREQ=MONTHLY;INTERVAL=1;BYDAY=5TU
DESCRIPTION: 5th week test entry
LOCATION:
SEQUENCE:0
STATUS:CONFIRMED
SUMMARY:Test-Event fifth Tuesdays
TRANSP:TRANSPARENT
END:VEVENT
END:VCALENDAR
Prueba Quick Add y escribe algo como 8:30-10:30 Swimming every 5th sunday of every month
.
Si selecciona un quinto viernes y escribe manualmente "Mi evento cada quinto viernes de cada mes" en el cuadro de descripción, los agregará adecuadamente. Por supuesto, sustituirías tu título por "Mi evento".
Aquí hay una solución:
Haga un mes de "muestra", creando un evento el primer viernes, uno el tercer viernes y otro el quinto viernes.
Para cada evento marque la casilla "repetir" En la ventana de repetición, marque mensualmente y el día del mes.
Su evento ahora aparecerá para todas estas fechas durante el tiempo que desee.
Haga clic en el primer día de la serie en Google Calendar y escriba 'Mi evento, quinto domingo de cada mes, 12: 30-3: 00' en el campo "Qué:":
Aquí hay una publicación de blog con más detalles: http://www.amilkhanzada.com/2013/06/google-calendar-repeating-events-on.html
Cuando me enfrento a respuestas de "no puedes hacerlo" con respecto a una aplicación web, trato de averiguar si tiene una API publicada y usarla. Por suerte para ti, Google Calendar tiene una API bien documentada . Entonces, si puede expresar sus necesidades en cualquier lenguaje de programación, puede hacerlo. ¡Buena suerte!
Si selecciona el tercer viernes del mes para la primera aparición y luego selecciona mensualmente, descubrirá lo que está haciendo y se verá como su captura de pantalla.