目标:完成某个宏后,向Skype联系人发送消息。
消息来源:我在周围搜索并发现了一些问题,试图做同样的事情。这是我使用Using Excel VBA to send Skype messages to Group Chat和https://www.mrexcel.com/forum/excel-questions/424432-sending-skype-message-through-excel-vba.html的代码的基础这两个问题使用类似的代码。
问题:当我运行代码时,我收到以下错误:
运行时错误'429':ActiveX组件无法创建对象
在线上:
Set aSkype = New SKYPE4COMLib.Skype
问题:此API是否仍适用于此类程序?如何解决持续的错误?
码:
Sub testingskype()
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 "message"
End Sub
Obs:我在我创建的每个模块中使用选项显式。
令我感到惊讶的是,当聊天自动化成为各地讨论的主题时,开发人员放弃了这个问题。
自2013年以来,“Skype for Business”基本上是重新命名的Lync,因此了解这一点非常重要
Skype <> "Skype for Business"
它就像java和javascript,完全不同,只是品牌的相似名称。
重要的是要了解Skype开发者平台或简单的Skype SDK,它是Office Skype,Skype Web,Skype for Business和Skype的保护伞。
在所有API / SDK中,需要使用:
因为这是适用于Skype桌面,Lync和所有后续SFB版本的单个可用SDK。
Persistent chat samples应该用于开发类似于这个问题的解决方案。
这可能没有多大帮助,但我不认为您在此处列出的代码有效,或者库未添加到您的Excel中。
相同的代码出现在这里:https://stackoverflow.com/a/43172531/8716187
你下载并注册了skype dll(错误与不添加它出现的activeX控件有关)。如果您使用的是x64,它可能只是x32 ..
当您安装使用Skype4COM.dll依赖项的软件时,软件应自动为您注册该文件。在某些情况下,您的DLL文件可能无法正确注册,因此,将提供“Skype4COM.dll未注册”错误。幸运的是,您可以使用名为“Microsoft注册服务器”(regsvr32.exe)的内置实用程序重新注册Skype4COM.dll文件。如何从提升的命令提示符(Windows XP,Vista,7,8和10)重新注册Skype4COM.dll:
单击“开始”按钮。
在搜索框中输入“command”...不要按ENTER键!
在键盘上按住CTRL-Shift键时,按ENTER键。
系统将提示您使用权限对话框。
单击是。
键入以下命令:regsvr32 / u Skype4COM.dll。
按ENTER键。这将取消注册您的文件。
键入以下命令:regsvr32 / i Skype4COM.dll。
按ENTER键。这将重新注册您的文件。
关闭命令提示符窗口。
重新启动与Skype4COM.dll错误相关的程序。
干杯,WWC