我正在使用此代码:

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 ...