5

I am trying to upload a folder from my C drive to a SharePoint library site. I have used the below code, which works fine when the ToPath is not a SharePoint library site but another folder from my C drive. Where am I going wrong?

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

Thank you!

3 Answers 3

12

I noticed that the SharePoint URL starts with https. As such, you'll need to construct your UNC path as \\share.name.com@SSL\DavWWWRoot\site\library\.

A few things to check:

  • WebClient service is running
  • The SharePoint site is trusted in Internet Options
Sign up to request clarification or add additional context in comments.

1 Comment

This should be the selected answer. We've been hunting this down for so long. You are amazing. Thank you!!!
2

Try specifying the Sharepoint path as UNC, and using the CopyFolder method:

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

3 Comments

No luck with that - it still says it doesn't exist
Have you included the filename with the path, in the Destination?
Answer edited - realised you want to copy the folder, not just a file - so try the CopyFolder method.
0

The solution for me was using:

Folder = Environ("USERPROFILE")

This gave me the name of the computer, then I filled the rest manually

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

It worked though I don´t think is an elegant solution.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.