我正在尝试使用 Excel VBA 发送 Skype 消息,我发现了这段代码
Sub Test()
Dim aSkype As SKYPE4COMLib.Skype
Set aSkype = New SKYPE4COMLib.Skype
Dim oChat As Chat
Dim skUser As SKYPE4COMLib.User
Set skUser = aSkype.User("user_name")
Set oChat = aSkype.CreateChatWith(skUser.Handle)
oChat.OpenWindow
oChat.SendMessage "automated message"
End Sub
它工作得很好,但仅适用于单个联系人。我还找到了这段代码
msg.Chat.SendMessage("your message")
应该向群组联系人发送消息,但我似乎无法将其集成到上面的代码中。我在网上找到了一些链接,暗示这是可能的,但它们都是用 C# 而不是 VBA 编写的。非常感谢..
您需要定义多个用户。一种方法是使用集合。
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
这里有一个很棒的来自 Skype 的资源 http://users.skynet.be/fa258239/bestanden/skype4com/skype4com.pdf有很多 VBA 示例。有关多聊天,请参阅第 21 页。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)