所以我目前有一个子软件复制存储在我们内部网上的文件并将它们保存到我们的共享驱动器中。现在,我想做同样的事情,但是在本地存储在用户计算机上的文件,而不是在Intranet上。我怎么能这样做?
Sub intranetPullFile(link, extent, strFile)
Set WinHttp = CreateObject("WinHttp.WinHttpRequest.5.1")
If WinHttp Is Nothing Then Set WinHttp = CreateObject("WinHttp.WinHttpRequest")
WinHttp.Open "GET", link , False
WinHttp.Send
arrResponse = WinHttp.ResponseBody
Set WinHttp = Nothing
Set oADO = CreateObject("ADODB.Stream")
oADO.Type = 1
oADO.Open
oADO.Write arrResponse
oADO.SaveToFile strFile, 2
oADO.Close
end sub
我尝试使用它,因为它们的C:....地址是文件的链接,但是我收到一个错误:URL没有使用公认的协议。
所以,我标记了答案,因为它得到了我需要的东西,谢谢! ---仍然很好奇是否有本地文件等同于'关于winhttp如何运作,但我现在可以继续前进,所以我很好。再次感谢。
答案 0 :(得分:0)
您可以使用CopyFile()
复制并指定新名称。如果您将True
作为第3个参数传递,它也可以覆盖现有文件:
With CreateObject("Scripting.FileSystemObject")
.CopyFile strSourceFile, strDestFile, True
End With
答案 1 :(得分:0)
VBA可以在没有FSO的情况下在一行中完成:
FileCopy fullSourcePathandName, fullDestinationPathandName