[英]VBA for moving file from one Sharepoint folder to another in Excel
我想編寫(或找到)一些 VBA 代碼,當有人單擊宏按鈕時,這些代碼基本上會將 XL 工作表從一個 Sharepoint 文件夾移動到另一個 Sharepoint 文件夾。
到目前為止,我發現的唯一解決方案是我需要將 Sharepoint 鏈接映射到本地文件夾,然后使用 .FSO 代碼,但這對我不起作用,因為出於安全原因沒有管理員訪問權限。
到目前為止我發現的唯一代碼如下
Function ConvertPath(path) As String
ConvertPath = Replace(path, " ", "%20")
ConvertPath = Replace(ConvertPath, "/", "\")
ConvertPath = Replace(ConvertPath, "http:", "")
End Function
Private Sub Approve_Click()
Dim sDocPath As String
Dim sDocPathConv As String
Dim sFileName As String
Dim sTargetPath As String
Dim sSourcePath As String
Dim fso As FileSystemObject
Set fso = New FileSystemObject ' CreateObject("Scripting.FileSystemObject")
sDocPath = ThisWorkbook.path
sFileName = "WorkBook.xlsx"
sDocPathConv = ConvertPath(sDocPath)
sSourcePath = sDocPathConv & "https://xxxx.sharepoint.com/sites/xxxxxx/" & sFileName
Debug.Print "Source: " & sSourcePath
sTargetPath = sDocPathConv & "https://xxxx.sharepoint.com/sites/xxxxxxx/" & sFileName
Debug.Print "Target: " & sTargetPath
fso.CopyFile sSourcePath, sTargetPath, True
End Sub
甚至這段代碼也不起作用,因為它總是給出一個錯誤,指出“找不到路徑”。 我一點也不熟悉 VBA 編程。
嘗試在 Windows 資源管理器中將 SharePoint 同步到 OneDrive。 那么下面的代碼應該可以工作。
還需要參考:Microsoft Scripting Runtime
Public Function strDisplayID() As String
strDisplayID = Environ("USERNAME")
End Function
Private Sub CommandButton_Click()
Dim fso As Object
Dim fileLocation As String
Set fso = CreateObject("Scripting.FileSystemObject")
fileLocation = "C:\Users\" & strDisplayID & "\YourPath\YourFile".pdf"
fso.MoveFile fileLocation
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.