【发布时间】:2016-01-15 08:23:18
【问题描述】:
我正在尝试创建 VBA 代码以从直接 FTP 链接(异步首选)将文件下载到特定路径。 我只找到了使它与 http url 一起工作的代码,但是对于 FTP 我得到了这个错误:
“运行时错误'-2146697210 (800c0006)': 系统找不到指定的对象”
对于这些第一次测试还没有为 ftp-server 设置用户名或密码。
仅适用于 http 的代码如下:
Sub DownloadFile()
Dim myURL As String
myURL = "ftp://xxx.xxx.xxx.xxx/test.txt"
Dim WinHttpReq As Object
Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
WinHttpReq.Open "GET", myURL, False, "username", "password"
WinHttpReq.send
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:\FTP\file.txt", 2 ' 1 = no overwrite, 2 = overwrite
oStream.Close
End If
End Sub
【问题讨论】:
-
我不得不回去,但来自 VBA 的 FTP 确实涉及更多 - 我相信这是不安装额外控件的唯一方法。我将在下面发布此代码。 experts-exchange.com/Networking/Protocols/Q_23627204.html