VBA:从服务器获取/下载Excel文件,并将内容复制到新工作表中

VBA:从服务器获取/下载Excel文件,并将内容复制到新工作表中,excel,vba,copy,worksheet,Excel,Vba,Copy,Worksheet,由于某些原因,以下宏无法工作: Sub ExtractDataTest() Dim FilePath$, Row&, Column&, Address$ 'change constants & FilePath below to suit '*************************************** Const FileName$ = "Dxo.xlsx" Const SheetName$ = "Open"

由于某些原因,以下宏无法工作:

Sub ExtractDataTest()


    Dim FilePath$, Row&, Column&, Address$


 'change constants & FilePath below to suit
     '***************************************
    Const FileName$ = "Dxo.xlsx"
    Const SheetName$ = "Open"
    Const NumRows& = 50
    Const NumColumns& = 20
    FilePath = ("http://enhanced1.sharepoint.hx.com/teams/")
     '***************************************


    DoEvents
    Application.ScreenUpdating = False
        If Dir(FilePath & FileName) = Empty Then
        MsgBox "The file " & FileName & " was not found", , "File Doesn't Exist"
        Exit Sub
    End If
    For Row = 1 To NumRows
        For Column = 1 To NumColumns
            Address = Cells(Row, Column).Address
            Cells(Row, Column) = GetData(FilePath, FileName, SheetName, Address)
            Columns.AutoFit
        Next Column
    Next Row
    ActiveWindow.DisplayZeros = False
End Sub




Private Function GetData(Path, File, Sheet, Address)
    Dim Data$
    Data = "'" & Path & "[" & File & "]" & Sheet & "'!" & _
    Range(Address).Range("A1").Address(, , xlR1C1)
    GetData = ExecuteExcel4Macro(Data)
End Function
我在第行收到运行时错误“52”(“错误的文件名或编号”):

有趣的是,它曾经起过作用。当位置为“C:\”时,它可以工作,我没有收到错误。奇怪的家伙


任何帮助都将不胜感激。

从文件系统打开文件与通过HTTP下载文件完全不同。 最简单的不可知方法是简单地使用
工作簿

Set wb = Workbooks.Open(FilePath & FileName)

(您需要删除
Dir()
,因为这仅适用于文件系统)

从文件系统打开文件与通过HTTP下载文件完全不同。 最简单的不可知方法是简单地使用
工作簿

Set wb = Workbooks.Open(FilePath & FileName)

(您需要删除
Dir()
,因为这仅适用于文件系统)

解决了我的问题。但现在我有了一个新问题。宏将下载并打开文件,但它会告诉他们没有找到文件x。知道为什么吗?解决了我的问题。但现在我有了一个新问题。宏将下载并打开文件,但它会告诉他们没有找到文件x。知道为什么吗?在一个封闭的电子表格中多次查询数据是非常低效的。为什么不打开、获取所有数据并粘贴到工作表上呢?在一个封闭的电子表格中多次查询数据是非常低效的。为什么不打开,获取所有数据并粘贴到工作表上?