outlook日历功能很强大,设置了账号后,能在手机端进行同步,经常使用。且outlook能周期性的定义会议或者约会,比如设置每周一次的例会等。但是,有一个小的遗憾,就是不能对每次的重复进行编号,查看不方便。于是,从网上找了一段vba代码,能通过脚本自己设定日历。比如,9月2号开学,设定每周是第几教学周,具体代码如下:
Sub SetAppt()
Dim olApp As Outlook.Application
Dim olApt As AppointmentItem
Dim a As Variant
Set olApp = New Outlook.Application
begin = CDate("2018-09-02") '设置开始时间
For i = 1 To 20
Set olApt = olApp.CreateItem(olAppointmentItem)
With olApt
.Start = begin + TimeValue("8:00:00") '新建日历的开始时间
.End = .Start + TimeValue("00:30:00") '新建日历的结束时间
.Subject = "教学第" + Str(i) + "周" '新建日历的主题
.Location = "" '新建日历的地点
.Body = "" '新建日历的内容
.BusyStatus = olBusy
.ReminderMinutesBeforeStart = 5 '新建日历提醒时间
.ReminderSet = True
.Save
End With
begin = begin + 7 '每7天循环一次,也就是每周一次
Next
Set olApt = Nothing
Set olApp = Nothing
End Sub
outlook宏的开启方式是:文件-》选项-》自定义功能区-》 右侧开发工具勾选上即可