为什么我不能用 vbs 更改 outlook 中的与会者类型?
Why I can't change the attendee's type in outlook with vbs?
我正在编写一个自动预订会议室的脚本。但在最后一步,AppointmentItem 无法更改为 MeetingItem。这是代码:
Set myItem = myOlApp.CreateItem(1)
myItem.MeetingStatus = olMeeting
myItem.Subject = "..."
myItem.Location = "..."
myItem.Start = #...#
myItem.Duration = 90
set myResourceAttendee = myItem.Recipients.Add("xxx@xxx.com")
myResourceAttendee.Type = olResource
myItem.Save
' myItem.Send
我以为我已经把Recipient的类型设置成"olResource"了,按照MS Docs也是一样的。但这就是我得到的:
我日历中的项目显示它仍然是 Appointment, and the resource I added is Required Attendee。
我手动设置成Resource后,就变成了Meeting。我不明白这是怎么发生的,以及我该如何解决这个问题。请帮我!非常感谢!!
顺便说一句,Outlook 版本是 Outlook 2016 (16.0.4849.1000) 32 位。
olMeeting
和 olResource
等 Outlook 枚举值在 vbscript 中是未知的(相对于 Outlook-VBA)
你首先需要从文档中找出它们的数值。
例如 OlMeetingStatus enum 文档说明如下:
olMeeting - 1 - 会议已安排。
olMeetingCanceled - 5 - 预定的会议已取消。
olMeetingReceived - 3 - 已收到会议请求。
olMeetingReceivedAndCanceled - 7 - 预定的会议已取消但仍显示在用户的日历上。
olNonMeeting - 0 - 已安排没有与会者的约会项目。此状态可用于在日历上设置假期。
然后在 vbscript 中您可以定义自己的常量以匹配已知的枚举值
const olMeeting = 1 '<- define enum value here
dim myItem
Set myItem = myOlApp.CreateItem(1)
myItem.MeetingStatus = olMeeting '<- use it here just like you would in VBA
我正在编写一个自动预订会议室的脚本。但在最后一步,AppointmentItem 无法更改为 MeetingItem。这是代码:
Set myItem = myOlApp.CreateItem(1)
myItem.MeetingStatus = olMeeting
myItem.Subject = "..."
myItem.Location = "..."
myItem.Start = #...#
myItem.Duration = 90
set myResourceAttendee = myItem.Recipients.Add("xxx@xxx.com")
myResourceAttendee.Type = olResource
myItem.Save
' myItem.Send
我以为我已经把Recipient的类型设置成"olResource"了,按照MS Docs也是一样的。但这就是我得到的:
我日历中的项目显示它仍然是 Appointment, and the resource I added is Required Attendee。
我手动设置成Resource后,就变成了Meeting。我不明白这是怎么发生的,以及我该如何解决这个问题。请帮我!非常感谢!!
顺便说一句,Outlook 版本是 Outlook 2016 (16.0.4849.1000) 32 位。
olMeeting
和 olResource
等 Outlook 枚举值在 vbscript 中是未知的(相对于 Outlook-VBA)
你首先需要从文档中找出它们的数值。
例如 OlMeetingStatus enum 文档说明如下:
olMeeting - 1 - 会议已安排。
olMeetingCanceled - 5 - 预定的会议已取消。
olMeetingReceived - 3 - 已收到会议请求。
olMeetingReceivedAndCanceled - 7 - 预定的会议已取消但仍显示在用户的日历上。
olNonMeeting - 0 - 已安排没有与会者的约会项目。此状态可用于在日历上设置假期。
然后在 vbscript 中您可以定义自己的常量以匹配已知的枚举值
const olMeeting = 1 '<- define enum value here
dim myItem
Set myItem = myOlApp.CreateItem(1)
myItem.MeetingStatus = olMeeting '<- use it here just like you would in VBA