我正在使用此代码:
Sub DownloadFile()
'Declare the Object and URL
Dim myURL As String
Dim WinHttpReq As Object
Dim oStream As Object
'Assign the URL and Object to Variables
myURL = "https://onedrive.live.com/download.aspx?resid=D7EE643A814F39C5!309&ithint=file%2cxlsx&app=Excel&authkey=!AJaKn7X3EQYkJjk"
Set WinHttpReq = CreateObject("winhttp.winhttprequest.5.1")
WinHttpReq.Open "GET", myURL, False
WinHttpReq.send
Debug.Print WinHttpReq.Status
myURL = WinHttpReq.responseBody
If WinHttpReq.Status = 200 Then
Set oStream = CreateObject("ADODB.Stream")
oStream.Open
oStream.Type = 1
oStream.Write WinHttpReq.responseBody
oStream.SaveToFile "C:\temp\test.xlsx", 2
oStream.Close
End If
End Sub
为了从一个驱动器共享公共地址获取一个Excel文件(xlsx)并将其保存到本地驱动器 . 可以循环访问一个驱动器共享文件夹,并使用VBA将所有文件作为列表获取?可以使用Microsoft Graph API执行类似的操作,但是可以从本地Excel实例执行此操作 - 我可以执行此操作吗?
我要添加的是,并非所有用户都拥有Microsoft帐户,并且有一个驱动器作为本地驱动器下载 . 因此,只有他们可以访问公共在线共享URL ...