我希望使用VBA excel从互联网上下载文件。该文件是一个包含员工列表信息的数据库。我希望文件保存在C:\ Users \“用户名”\ FCMMIS \
中这是我想要实现的循序渐进的过程:
另外请注意,有问题的excel文件将由不同的人使用笔记本电脑。我不确定是否可以将文件保存在“用户”文件夹中,或者是否需要授予权限才能进行保存。
我知道有更好的解决方案,比如写一个完整的应用程序,但由于要求,我坚持使用excel和VBA。
编辑(与第3部分一起完成):
3.1:下载数据库后,excel文件从employee表中获取记录,并将它们打印在同一个excel文件中的新工作表中。
3.2:打印数据随后用于工作表中的各种功能。
但是,我正在讨论是否只是操纵数据库本身的数据或者从创建的工作表中使用它是否有效。
答案 0 :(得分:2)
以下代码来自an article by Matt Vidas
等待你对第3点的回答,没有范围?
Function Download_File(ByVal vWebFile As String, ByVal vLocalFile As String) As Boolean
Dim oXMLHTTP As Object, i As Long, vFF As Long, oResp() As Byte
'You can also set a ref. to Microsoft XML, and Dim oXMLHTTP as MSXML2.XMLHTTP
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
oXMLHTTP.Open "GET", vWebFile, False 'Open socket to get the website
oXMLHTTP.Send 'send request
'Wait for request to finish
Do While oXMLHTTP.readyState <> 4
DoEvents
Loop
oResp = oXMLHTTP.responseBody 'Returns the results as a byte array
'Create local file and save results to it
vFF = FreeFile
If Dir(vLocalFile) <> "" Then Kill vLocalFile
Open vLocalFile For Binary As #vFF
Put #vFF, , oResp
Close #vFF
'Clear memory
Set oXMLHTTP = Nothing
End Function
Sub Testing()
Download_File "http://example.org/yourDataBaseFile", "C:\Users\" & Environ("username") & "\yourDataBaseFile"
End Sub
答案 1 :(得分:0)
如果相关文件是excel工作簿,您可以执行此操作:
With Workbooks.Open("http://example.org/yourfile.xls")
.SaveAs "C:\Users\example\yourfile.xls"
.Close
End With