Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 用于自动身份验证的FindWindows和SendMessgae_Excel_Vba_Authentication_Sendmessage_Findwindow - Fatal编程技术网

Excel 用于自动身份验证的FindWindows和SendMessgae

Excel 用于自动身份验证的FindWindows和SendMessgae,excel,vba,authentication,sendmessage,findwindow,Excel,Vba,Authentication,Sendmessage,Findwindow,我有一个需要外接程序的Excel自动任务。使用外接程序需要单独的身份验证 没有办法通过我的证书。加载加载项时,我必须手动进行身份验证。因为传统的方法会启动一个新的(未经验证的)实例,所以我不知道如何完全自动化需要外接程序的任务 我知道我可以使用getObject在Excel中使用此外接程序对象来查找外接程序名称: For i = 1 To AddIns.Count Debug.Print (AddIns(i).Name) Debug.Print (AddIns(i).FullName) D

我有一个需要外接程序的Excel自动任务。使用外接程序需要单独的身份验证

没有办法通过我的证书。加载加载项时,我必须手动进行身份验证。因为传统的方法会启动一个新的(未经验证的)实例,所以我不知道如何完全自动化需要外接程序的任务

我知道我可以使用getObject在Excel中使用此外接程序对象来查找外接程序名称:

For i = 1 To AddIns.Count
 Debug.Print (AddIns(i).Name)
 Debug.Print (AddIns(i).FullName)
 Debug.Print (AddIns(i).Title)
 Debug.Print (AddIns(i).Installed)
 Debug.Print (AddIns(i).FullName)
Next
这将显示外接程序名称,我可以使用

Set MyObject = AddIns("addin name")
或者使用findWindow(Windows API)查找外接程序实例

hWnd = FindWindow(vbNullString, "Add-in Login Window Title")
WindowsAPI getobject上的引用链接,以及Findwindows和SendMessage的引用函数

加载项登录窗口如下所示:

我被困在如何通过对象或HWND引用将凭据传递到此加载项窗口的问题上

这里有一些有用的帖子:。及


如何通过Windows API(不一定通过VBA)进行身份验证?我也可以使用Python。

作为基于窗口的应用程序,您可以使用Autoit+VBA。您可以使用AutoIt工具录制宏并在VBA中使用。它是您自己的加载项吗?然后在不需要凭据的情况下复制。如果没有,您是否询问了程序员/软件供应商?