使用VBA在Skype中发送消息

DGM*_*S89 11 excel vba skype excel-vba skype4com

目标:完成某个宏后,向Skype联系人发送消息.

消息来源:我在周围搜索并发现了一些问题,试图做同样的事情.这是我正在使用的代码的基础使用Excel VBA将Skype消息发送到群聊以及此https://www.mrexcel.com/forum/excel-questions/424432-sending-skype-message-through-excel -vba.html 这两个问题都使用类似的代码.

问题:当我运行代码时,我收到以下错误:

运行时错误'429':ActiveX组件无法创建对象

在线上:

Set aSkype = New SKYPE4COMLib.Skype
Run Code Online (Sandbox Code Playgroud)

问题:此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
Run Code Online (Sandbox Code Playgroud)

Obs:我在我创建的每个模块中都使用了explicit选项.

小智 0

这可能没有太大帮助,但我认为您在此处列出的代码不起作用,或者该库未添加到您的 Excel 中。

相同的代码出现在这里: https ://stackoverflow.com/a/43172531/8716187

您是否下载并注册了 Skype DLL(错误与未添加它出现的 ActiveX 控件有关)。如果您使用 x64,它可能只是 x32 ..

当您安装使用 Skype4COM.dll 依赖项的软件时,该软件应自动为您注册该文件。在某些情况下,您的 DLL 文件可能无法正确注册,因此将提供“Skype4COM.dll 未注册”错误。幸运的是,您可以使用名为“Microsoft Register Server”(regsvr32.exe) 的内置实用程序来重新注册 Skype4COM.dll 文件。如何从提升的命令提示符重新注册 Skype4COM.dll(Windows XP、Vista、7、8 和 10):

单击“开始”按钮。

在搜索框中输入“命令”...先不要按 ENTER 键!

按住键盘上的 CTRL-Shift 键,同时按 ENTER。

系统将提示您权限对话框。

单击“是”。

键入以下命令:regsvr32 /u Skype4COM.dll。

按回车键。这将取消注册您的文件。

键入以下命令:regsvr32 /i Skype4COM.dll。

按回车键。这将重新注册您的文件。

关闭命令提示符窗口。

重新启动与Skype4COM.dll错误相关的程序。

https://www.solvusoft.com/en/files/missing-not-found-error/dll/windows/skype-for-com-api/skype4com/skype4com-dll/

干杯,WWC