Могу ли я создать событие Календаря Google, которое будет повторяться каждую 1-ю, 3-ю и 5-ю пятницу месяца?

29

Можно ли создать событие, которое повторяется в каждую 1-ю, 3-ю и 5-ю пятницу месяца в календаре Google?

Кристиан
источник

Ответы:

26

Хотя Календарь Google не позволяет вам создавать или изменять произвольные правила повторения, спецификация iCalendar, которую он использует и понимает, достаточно надежна в этом отношении.

Создайте файл ICS с пользовательским правилом повторения (RRULE). Например, для мероприятия на весь день в первую, третью и пятую пятницу каждого месяца, начиная с 2 марта 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

Чтобы импортировать файл ICS (обновлено в июне 2018 года): щелкните значок шестеренки и выберите «Настройки», затем выберите «Импорт и экспорт» в меню. ( Вот прямая ссылка по состоянию на июнь 2018 года .) В разделе «Импорт» выберите файл ICS и загрузите его в нужный календарь.

В этом примере Календарь Google правильно анализирует RRULE и даже описывает повторение как «Ежемесячно в пятницу недель 1, 3, 5 месяца»:

Форма событий Календаря Google с указанием правила повторения "Ежемесячно в пятницу недель 1, 3, 5 месяца"

Конечно, вы не сможете настроить пользовательское правило повторения из Календаря Google, если только вы не хотите полностью заменить правило повторения одним из стандартных параметров. В противном случае вам придется удалить событие, настроить файл ICS и повторно импортировать его. Вы по-прежнему сможете вносить другие изменения в событие в Календаре Google, такие как переименование, перемещение в другой календарь и т. Д.

Если это поможет, вы можете узнать больше о гибкости, предлагаемой пользовательскими правилами повторения в спецификации iCalendar .

Тим Паренти
источник
Что-то об этом не работало при импорте, но сообщение об ошибке не было полезным. Я смог экспортировать свой существующий календарь, оставить все ненужное между VCALENDAR и VEVENT, затем удалить все, кроме одного события, и изменить его, чтобы он работал. Даты выглядят немного по-другому, и нет никакого ИНТЕРВАЛА, но я не знаю точно, что стало причиной его сбоя
redbmk
Я обновил значение DTEND (чтобы оно появилось в будущем), создал новый календарь и попытался импортировать его во вновь созданный календарь. Все, что я получаю, однако, Processed one event. Successfully imported 0 events.я также пытался добавить 'VERSION: 2.0' и 'PRODID: [my-фамилия]'. Каждое изменение дало один и тот же результат.
Рами
amilkhanzada.com/2013/06/… <- эта ссылка показывает, как это сделать в Интернете; ti синхронизируется с телефоном просто отлично
iGbanam
Хорошо сработало для меня. Пример со временем: НАЧАТЬ: VCALENDAR НАЧАТЬ: VEVENT DTSTART; ЗНАЧЕНИЕ = ВРЕМЯ ДАТЫ: 20170118T121500 DTEND; ЗНАЧЕНИЕ = ВРЕМЯ ДАТЫ: 20170118T134500 RRULE: FREQ = ЕЖЕМЕСЯЧНО; ИНТЕРВАЛЬ = 1; Bridge St ПОСЛЕДОВАТЕЛЬНОСТЬ: 0 СОСТОЯНИЕ: ПОДТВЕРЖДЕННОЕ РЕЗЮМЕ: Стандарты Toastmasters Australia ТРАНСПОРТ: ПРОЗРАЧНЫЙ КОНЕЦ: VEVENT END: VCALENDAR
jeznag
Смотрите мое обновленное решение 2018 ниже.
Zediiiii
10

Единственный практический способ добиться этого - создать три отдельных события: одно, которое повторяется в 1-ю пятницу, одно в 3-ю пятницу и в 5-ю пятницу (хотя не каждый месяц будет иметь 5-ю пятницу).

повторяющееся приложение ежемесячно в третью пятницу

Обновление : мне приходит в голову другой метод: вам нужно будет создать 12 отдельных повторяющихся встреч, по одному на каждый месяц, который начинается в первую пятницу месяца, повторяется каждые две недели и заканчивается в последний день месяца. Затем вы получите за этот месяц первую, третью и, если она существует, пятую пятницу.

пиво
источник
1
Это оставляет вопрос о том, как создать событие, которое повторяется каждую пятую пятницу. Когда я нажимаю «Повторять каждый месяц», я получаю: повторяется каждую последнюю пятницу.
Кристиан,
@Al Everest, это не совсем возможно в Календаре Google, вы не можете выбрать 1, 3 или 5, если вы выбираете Ежемесячные повторы .. !! Когда вы выбираете ежемесячные повторы, вы можете выбрать только какой день месяца, а не недели!
Липис
@Lipis: Да действительно? Как насчет скриншота, который я добавил? Это ясно показывает, что вы можете повторить в третью пятницу каждого месяца.
эль
@Al Эверетт .. упс ...! :) Пропустил это .. вот почему мы здесь в конце концов .. приятно знать!
Липис
Можно создать то, что повторяется каждую третью пятницу. Если вы нажмете на день недели, вы не будете получать повторы каждую пятую пятницу.
Кристиан
1

Некоторые из методов, упомянутых здесь, больше не работают, хотя принятый ответ работает нормально.

Вот другой способ - создать событие, которое повторяется в каждый x-й день недели для каждого повторения, которое вам нужно.

Вот процесс: создайте событие в правильный день недели, затем перейдите к повторению -> ежемесячно -> повторение в каждый x-й день недели. Вы можете продублировать событие, чтобы ускорить создание других событий.

Для повторения каждый пятый день недели вам нужно использовать приложение, использующее API-интерфейс календаря Google, которое позволяет повторять каждое пятое воскресенье. Я использую хорошо сделанный Business Calendar 2 для этой цели, но есть и другие, которые тоже работают.

См. Прилагаемую фотографию, чтобы убедиться, что Google API поддерживает такое поведение.

Пример повторения пятого дня недели в Календаре Google

Zediiiii
источник
По состоянию на июнь 2018 года Календарь Google по-прежнему поддерживает импорт файлов ICS, как это было предложено в моем принятом ответе, хотя все немного изменилось, поэтому я обновил его. Можно утверждать, что выполнение этого с несколькими отдельными событиями является таким же «взломом», как использование настраиваемого правила повторения, чтобы сохранить все это вместе, но они по-прежнему являются действительными подходами.
Тим Паренти
1
Мои извинения, ваш метод работает нормально - я обращался к другому методу, который больше не работает. Тем не менее, решение для тех, кто страдает аллергией на код, приятно иметь. =)
Zediiiii
1

Никакой другой метод не работал для меня, кроме импорта файлов ICS. Мне нужно было указать, что происходило по расписанию врача в определенные дни недели на 5-й неделе любого месяца. Если у вас есть необходимость в 5-й неделе, пожалуйста, не стесняйтесь использовать этот измененный файл ICS в качестве примера:

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
Свами Данамана
источник
0

Нет, установить это правило невозможно.

Самое близкое, чего вы можете достичь, это установить его ежедневно и повторять каждые 14 дней, начиная с одной пятницы.

Lipis
источник
2
Очень 14 дней - это что-то совершенно другое, так как событие происходит в определенные дни в реальности.
Кристиан,
0

Попробуйте Quick Add и введите что-то вроде 8:30-10:30 Swimming every 5th sunday of every month.

вздор
источник
Это возможное решение, но оно работает только каждое 5-е воскресенье, вам необходимо добавить к этому ответу ответ на остальную часть вопроса, поскольку это не так просто, как добавить 1 Быстрое событие, чтобы охватить все повторения.
OnenOnlyWalter
0

Если вы выберете 5-ю пятницу и вручную введете «Мое событие в каждую 5-ю пятницу каждого месяца» в поле описания, он добавит их соответствующим образом. Конечно, вы бы заменили свой заголовок на «Мое мероприятие».

Тони
источник
Это кажется хорошим ответом, но я не могу повторить поведение в календаре на 2018 год. Это все еще работает?
Zediiiii
0

Вот одно из решений:

Создайте «примерный» месяц, создав одно событие в первую пятницу, одно в третью пятницу и одно в пятую пятницу.
Для каждого события установите флажок «повторение». В повторяющемся окне отметьте месяц и день месяца.

Ваше мероприятие будет отображаться на все эти даты столько, сколько вы пожелаете.

Adrienne
источник
1
Именно это я и предложил в своем ответе , который ОП не очень понравился.
Але
0

Когда я сталкиваюсь с ответами «вы не можете этого сделать» относительно веб-приложения, я пытаюсь выяснить, есть ли у него опубликованный API, и использовать его. К счастью для вас, у Календаря Google есть хорошо документированный API . Так что если вы можете сформулировать свои потребности на любом языке программирования, вы можете сделать это. Удачи!

Путешествующий техник
источник
-1

Если вы выберете третью пятницу месяца для первого вхождения, а затем выберите ежемесячно, он выяснит, что вы делаете, и будет выглядеть так же, как ваш скриншот.


источник