Excel 使用VBA发送Skype for business
我正在尝试使用VBA向一群人发送Skype消息。 下面的代码理论上应该可以工作,但我有以下错误消息: 未为定义用户定义的类型 aSkype As SKYPE4COMLib.Skype 有什么想法吗? 我想知道这是否是许可问题 多谢各位Excel 使用VBA发送Skype for business,excel,vba,skype,Excel,Vba,Skype,我正在尝试使用VBA向一群人发送Skype消息。 下面的代码理论上应该可以工作,但我有以下错误消息: 未为定义用户定义的类型 aSkype As SKYPE4COMLib.Skype 有什么想法吗? 我想知道这是否是许可问题 多谢各位 Sub Test() Dim aSkype As SKYPE4COMLib.Skype Set aSkype = New SKYPE4COMLib.Skype Dim oChat As Chat Dim skUser As SKYPE4COMLib
Sub Test()
Dim aSkype As SKYPE4COMLib.Skype
Set aSkype = New SKYPE4COMLib.Skype
Dim oChat As Chat
Dim skUser As SKYPE4COMLib.User
Set oMembers = CreateObject("Skype4COM.UserCollection")
oMembers.Add (oSkype.User("user_name1"))
oMembers.Add (oSkype.User("user_name2"))
Set oChat = oSkype.CreateChatMultiple(oMembers)
oChat.OpenWindow
oChat.Topic = "Group Chat Topic"
oChat.SendMessage "automated message"
End Sub
您是否有对
SKYPE4COMLib
库的引用?用户需要声明:Dim oMembers As objective如果您正在使用skype for business
,请阅读此。。。。显然,微软削弱了该软件产品,使其不能再直接与VBA一起使用。必须添加另一层软件。。。如图所示,您应该指定选项Explicit
。您正在声明aSkype
,但使用的是oSkype
。去掉这些无用的前缀,它们显然在伤害你。另外,oMembers
未声明,oChat
的类型未限定,oMembers.Add
将失败,因为这些无关的括号强制将对象作为值进行计算,而值可能只存储对象的默认成员值,而不是对象本身(如果对象没有默认成员,则抛出错误)。您是否有对SKYPE4COMLib
库的引用?用户需要声明:Dim oMembers As objective如果您使用的是skype for business
,请阅读此内容…显然,microsoft破坏了该软件产品,因此无法再直接与VBA一起使用。必须添加另一层软件…请参阅此Yo你应该指定Option Explicit
。你在声明aSkype
,但使用oSkype
。去掉这些无用的前缀,它们显然会伤害你。而且oMembers
没有声明,oChat
的类型没有限定,oMembers。Add
将失败,因为这些多余的括号s强制将对象计算为值,这可能只存储对象的默认成员值,而不是对象本身(如果对象没有默认成员,则抛出错误)。