是否可以在 VBA 中考虑由数据连接刷新激活的 SharePoint 凭据提示?

KOs*_*oll 8 excel sharepoint vba office365

我有一个 Excel 工作簿,它具有到公司服务器上的 SharePoint 列表的活动数据连接。SP 列表只是当时 SP 文档库中所有文件的列表。我有一个 VBA 子例程,负责刷新此数据连接以查看当时库中的内容,然后将一些信息从列表(文档名称、文档作者、提交时间戳等)移动到不同的工作簿。

SharePoint 站点使用 Active Directory 凭据进行身份验证,并且 SharePoint 还映射为运行代码的 PC 上的网络驱动器。但即便如此,刷新此数据连接有时会导致凭据提示,看起来就像我帖子末尾的图像。如果我再次手动输入相同的 AD 凭据,连接请求将通过身份验证,并且 Excel 中的列表会更新。

我的问题是:如何在我的代码中说明这一点?理想情况下,我希望它触发电子邮件警报或其他内容,但问题是ThisWorkbook.RefreshAll执行连接刷新的代码行 ( ) 在处理凭据提示之前不会运行完成,因此我无法设置在后面的代码行中添加任何处理程序。我不能进行这种刷新,这可能会导致代码挂在这条线上,直到有人碰巧注意到有问题(它在无人看管的 PC 上运行)。任何人都知道可以帮助解决我的问题的任何事情?

在此处输入图片说明

小智 0

由于驱动器是本地映射的,因此您应该能够直接转到文件并根据需要操作它,导入它,而不需要建立活动的数据连接。与更严格的数据连接相比,它将为您提供更大的灵活性。

这个网站有一个很好的例子,展示了如何做你正在寻找的事情,但考虑到具体情况,我想象的方式会更有效。

  • 链接的文章似乎与刷新数据连接或处理凭据提示(或避免它)完全无关。此外,就其价值而言,我会指出您提供的解决方案根本不适用于赏金原因。即使对于这种情况,SharePoint 中的文件也存储为 blob,因此我真的不知道 OP 在 WRT 将 SharePoint 服务器(站点?)映射到映射驱动器时在谈论什么。 (4认同)