Excel 使用VBA发送Skype for business

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

我正在尝试使用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.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强制将对象计算为值,这可能只存储对象的默认成员值,而不是对象本身(如果对象没有默认成员,则抛出错误)。