excel vba将文件上传到sharepoint

时间:2018-05-24 13:34:21

标签: vba excel-vba sharepoint excel

我正在尝试将文件夹从C驱动器上传到SharePoint库网站。我使用了下面的代码,当ToPath不是SharePoint库站点而是来自我的C盘的另一个文件夹时,它可以正常工作。我哪里错了?

Sub AddSharePointFiles()

Dim FSO As Object
Dim FromPath As String
Dim ToPath As String

ToPath = "https://share.name.com/site/folder/_layouts/15/start.aspx#/LibraryName/Forms/AllItems.aspx"
FromPath = "C:\Users\Name\Documents\FolderName"

Set FSO = CreateObject("scripting.filesystemobject")

FSO.CopyFile Source:=FromPath, Destination:=ToPath

End Sub

谢谢!

3 个答案:

答案 0 :(得分:2)

(我不能在Olly的答案中添加评论,因为我是新的,所以我会在新的答案中提出我的意见。)

我注意到SharePoint URL以https开头。因此,您需要将您的UNC路径构建为\\share.name.com@SSL\DavWWWRoot\site\library\

要检查的一些事项:

  • WebClient服务正在运行
  • SharePoint网站在“Internet选项”中受信任

答案 1 :(得分:0)

尝试将Sharepoint路径指定为UNC,并使用CopyFolder方法:

Sub AddSharePointFiles()

    Dim FSO As Object
    Dim FromPath As String
    Dim ToPath As String

    ToPath = "\\share.name.com\site\folder"
    FromPath = "C:\Users\Name\Documents\FolderName"

    Set FSO = CreateObject("scripting.filesystemobject")
    FSO.CopyFolder Source:=FromPath, Destination:=ToPath

End Sub

答案 2 :(得分:0)

我的解决方案是使用:

Folder = Environ("USERPROFILE")

这个给了我电脑的名字,剩下的我手动填

Folder = Environ("USERPROFILE") & "\Business\Administration\Documents"

虽然我认为这不是一个优雅的解决方案,但它确实有效。