强制用户通过资源管理器登录sharepoint

时间:2015-04-02 15:31:13

标签: vba sharepoint vb6

我在excel vba中有一个例程,它从sharepoint服务器检索文件和文件列表,以便从多个文件中提取特定数据。如果用户事先进入Windows资源管理器中的服务器(在地址栏中输入\ server.address.com \ Directory \ Folder \ Structure \)并使用Windows登录信息登录,则此方法很有用。

如果用户自重新启动后尚未登录,则系统会抛出错误,因为它无法访问sharepoint服务器上的文件系统。

我以为我可以使用shell打开一个资源管理器窗口:

Shell "explorer.exe /e, \\server.address.com\Directory\Folder\Structure\", vbNormalFocus

但如果他们尚未登录,则只会在用户的文档文件夹中打开。我也尝试使用文件系统对象连接到文件夹,希望提示然后:

 Dim FSO As Object, FLD As Object
 Set FSO = CreateObject("scripting.filesystemobject")
 Set FLD = FSO.GetFolder("\\server.address.com\Directory\Folder\Structure\")

但没有快乐。

此外,目录结构中没有空格,所以我不需要逃避路径(尽管我确实尝试过)。

我还尝试强制用户在Get the content of a sharepoint folder with Excel VBA中找到的驱动器代码中映射Windows资源管理器中的文件夹,但是我收到错误“由于用户尚未经过身份验证,因此未执行请求操作”。

任何想法我还可以尝试为最终用户进行身份验证,而不是让他们都将共享点添加到他们的资源管理器收藏夹(我的手动解决方法)。

由于

1 个答案:

答案 0 :(得分:0)

捕获错误,弹出一个告诉他们需要登录的弹出窗口。当他们按下确定时,执行类似下面的代码:

ActiveWorkbook.FollowHyperlink Address:="https://yourSharePointSitehere", NewWindow:=True