ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 154|回复: 1

求教,我用WinHttpReq下载文件下载回来的却是旧文件

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-1-7 20:28 | 显示全部楼层 |阅读模式
各位老师,我用WinHttpReq下载WEB远程文件,文件能够下载,但如果修改远程文件再用该方法下载的却是未修改前的,请问要如何解决呢?谢谢指教!!!
以下是我的下载代码
Sub cc()
    Dim myURL As String, hzzh
    myURL = "xxxx"'web远程文件地址
    charToFind = "/"

    hzzh = InStrRev(myURL, charToFind)
    myURL = Left(myURL, hzzh) & WorksheetFunction.EncodeURL(Right(myURL, Len(myURL) - hzzh))

    Sheet1.Range("a2") = myURL
    Dim WinHttpReq As Object
    Set WinHttpReq = CreateObject("Microsoft.XMLHTTP")
    WinHttpReq.Open "GET", myURL, False
    WinHttpReq.send

    Dim oStream As Object
    Set oStream = CreateObject("ADODB.Stream")

    If WinHttpReq.Status = 200 Then
        Set oStream = CreateObject("ADODB.Stream")
        oStream.Open
        oStream.Type = 1
        oStream.Write WinHttpReq.responseBody
        oStream.SaveToFile ThisWorkbook.Path & "\考勤管理系统.xlsm", 2 ' 1 = no overwrite, 2 = overwrite
        oStream.Close
    End If

    Set WinHttpReq = Nothing
    Set oStream = Nothing


End Sub

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-1-8 10:09 | 显示全部楼层
自行解决了,在下载前增加以下代码即可清除之前是缓存的文件,下载来的文件就是最新了的,代码如下:
Shell "RunDll32.exe InetCpl.cpl,ClearMyTracksByProcess 8
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-19 11:21 , Processed in 0.036603 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表