是否可以创建一个事件,该事件在Google日历中每月的第1、3和5个星期五重复一次?

#1 楼

尽管Google日历不允许您创建或修改任意重复规则,但它使用和理解的iCalendar规范在这方面非常强大。

使用自定义重复规则创建ICS文件(RRULE )。例如,对于从2012年3月2日开始的每个月的第一个,第三个和第五个星期五的全天活动,

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年6月):点击齿轮图标并选择“设置”,然后从菜单中选择“导入和导出”。 (这里是到2018年6月的直接链接。)在“导入”下,选择您的ICS文件并将其上传到所需的日历。

在此示例中,Google日历正确地解析了RRULE,甚至描述了重复周期为“每月的第1、3、5周的每月的星期五”:从Google日历中获取,除非您希望用标准选项之一完全替换重复规则。否则,您将必须删除事件,调整ICS文件并重新导入。您仍然应该能够在Google日历中对活动进行其他更改,例如重命名,移动到另一个日历等。

如果这有帮助,您可能希望阅读更多有关由Google日历提供的灵活性的信息。 iCalendar规范中的自定义重复规则。

评论


导入时有关此问题的操作不起作用,但错误消息根本没有用。我能够导出现有日历,将所有垃圾遗忘在VCALENDAR和VEVENT之间,然后剔除一个事件,然后对其进行修改以使其起作用。日期看起来有些不同,没有间隔,但是我不知道是什么原因导致日期失败

– redbmk
13年5月24日在21:56

我更新了DTEND值(以便将来使用DTEND),创建了一个新日历,并尝试将其导入到新创建的日历中。但是,我得到的只是一个事件。已成功导入0个事件。我还尝试添加“ VERSION:2.0”和“ PRODID:[my-last-name]”。每次更改都得出相同的结果。

–拉米
15年8月4日在13:44

amilkhanzada.com/2013/06/…<-此链接显示了如何在网络上进行操作; ti同步到手机就好了

– iGbanam
15年12月21日在10:48

对我来说很好。时间示例:BEGIN:VCALENDAR BEGIN:VEVENT DTSTART; VALUE = DATE-TIME:20170118T121500 DTEND; VALUE = DATE-TIME:20170118T134500 RRULE:FREQ = MONTHLY; INTERVAL = 1; BYDAY = 1WE,3WE,5WE描述:主持人位置: Bridge St SEQUENCE:0状态:已确认摘要:Toastmasters Standards澳大利亚TRANSP:透明端:VEVENT端:VCALENDAR

– Jeznag
17年1月4日在22:19

请参阅下面的我的2018更新解决方案。

–Zediiiii
18年5月31日在17:43

#2 楼

实现此目的的唯一实际方法是创建三个单独的事件,一个重复第一个星期五,另一个重复在第三个星期五,另一个重复在第五个星期五(尽管并非每个月都会有一个第五个星期五)。 br />


更新:我想到另一种方法:您需要创建12个单独的定期约会,每个月一次,从该月的第一个星期五开始,重复一次每两周,并在每月的最后一天结束。然后,您将在该月中的第一个,第三个,如果有的话,第五个星期五。

评论


剩下的问题是如何创建每5个星期五重复一次的事件。当我每月单击重复时,我得到:重复每个最后一个星期五。

–基督徒
2010-09-20在11:16



@Al Everest,这在Google日历中实际上是不可能的,如果您选择每月重复,则不能选择1、3或5。选择每月重复时,您只能选择每月的哪一天,而不是一周的哪一天!

– Lipis
2010-09-20 17:23

@Lipis:真的吗?我添加的屏幕快照如何?它清楚地表明,您可以选择在每个月的第三个星期五重复一次。

–ale
2010-09-20 18:22

@Al Everett ..哎呀...! :)错过了..这就是我们毕竟在这里的原因..很高兴知道!

– Lipis
2010-09-20 18:50

可以创建每三个星期五重复一次的内容。如果您单击星期几,则不会在每个第5个星期五重复。

–基督徒
2010-09-21 9:59

#3 楼

尽管已接受的答案很好,但此处解决的某些方法不再起作用。

采用另一种方法-创建一个活动,该活动在每个第x个工作日针对您需要的每次重复重复一次。

流程如下:在正确的工作日创建一个活动,然后重复执行->每月一次->在每个第x个工作日重复一次。您可以复制事件以加快其他事件的创建速度。

要在第5个工作日重复,您需要使用利用Google日历API的应用程序,该应用程序允许每第5个星期日重复。我将精巧的Business Calendar 2用于此目的,但也可以使用其他功能。 >

评论


截至2018年6月,Google日历仍支持导入我接受的答案中建议的ICS文件,尽管情况有所变化,所以我已对其进行了更新。可以争辩说,用几个单独的事件来完成此操作与使用自定义重复规则将所有内容保持在一起一样,是“ hack”,但它们仍然都是有效的方法。

–蒂姆·帕特里(Tim Parenti)
18年6月1日在3:07

抱歉,您的方法正常-我正在解决另一种不再有效的方法。就是说,对于那些对代码过敏的人,有一个不错的解决方案。 =)

–Zediiiii
18年6月2日在4:12

#4 楼

除了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


#5 楼

不,无法设置此规则。

您可以实现的最接近的操作是将其设置为每天一次,并从一个星期五开始每14天重复一次。

评论


14天是完全不同的,因为事件实际上是在某些特定日期发生的。

–基督徒
2010-09-19 17:53

#6 楼

尝试快速添加并键入类似8:30-10:30 Swimming every 5th sunday of every month的内容。

评论


这是一种可能的解决方案,但仅适用于每第5个星期日,您需要添加此答案以解决其余问题,因为它并不像添加1个快速事件来覆盖所有重复发生那样简单。

– OnenOnlyWalter
2012年11月19日在21:23

#7 楼

如果您选择第五个星期五并在说明框中手动键入“我的活动在每月的每个第五个星期五”,它将适当地添加它们。当然,您可以将标题替换为“我的活动”。

评论


这似乎是一个很好的答案,但我无法复制2018年日历中的行为。这仍然有效吗?

–Zediiiii
18年5月31日在17:26

#8 楼

这是一个解决方案:

创建一个“样本”月,在第一个星期五创建一个事件,在第三个星期五创建一个事件,在第五个星期五创建一个事件。
对于每个事件,请选中“重复”
,在重复窗口中,检查每月和每月的某天。

您的活动现在将在所有这些日期中显示,只要您愿意。

评论


这就是我在回答中建议的内容,OP对此并不满意。

–ale
2012年12月1日23:24

#9 楼

点击Google日历中系列的第一天,然后在“内容:”字段中输入“我的活动,每月的第五个星期日,12:30-3:00”:

这是一个有关更多详细信息的博客文章:http://www.amilkhanzada.com/2013/06/google-calendar-repeating-events-on.html

#10 楼

当遇到有关Web应用程序的“您做不到”的答案时,我尝试找出它是否具有已发布的API并使用它。对您来说很幸运,Google日历具有完善的API。因此,如果您可以用任何编程语言表达您的需求,那么您可以做到。祝你好运!

#11 楼

如果您选择第一个出现的月份的第三个星期五,然后选择每月一次,它将找出您的工作,就像您的屏幕截图一样。