title: Use VBA to download zip file from url
body: <p>I am using <a href="https://www.mrexcel.com/forum/excel-questions/984206-need-visual-basic-applications-download-copy-data-zip-file.html" rel="nofollow noreferrer">this link</a> as reference to download a zip file from url.</p>
  
  <p>The code I am using is in below</p>
  
  <pre><code>Sub DownloadZipExtractCsvAndLoad()
    Dim UrlFile As String, ZipFile As String, CsvFile As String, Folder As String, s As String
    ' UrlFile to the ZIP archive
    UrlFile = "https://loanperformancedata.fanniemae.com/lppub/publish?file=2008Q1.zip"
    ' Extract ZipFile from UrlFile
    ZipFile = "2008Q1.zip"
    ' Define temporary folder
    Folder = "C:\Users\xxxxxx\Desktop\"
    ' Disable screen updating to avoid blinking
    Application.ScreenUpdating = False
    ' Trap errors
    On Error GoTo exit_ 
    ' Download UrlFile to ZipFile in Folder
    If Not Url2File(UrlFile, Folder &amp; ZipFile, "xxx", "xxxx") Then
      MsgBox "Can't download file" &amp; vbLf &amp; UrlFile, vbCritical, "Error"
      Exit Sub
    End If 
  exit_:
    ' Restore screen updating
    Application.ScreenUpdating = True 
    ' Inform about the reason of the trapped error
    If Err Then MsgBox Err.Description, vbCritical, "Error"
  End Sub
  
  Function Url2File(UrlFile As String, PathName As String, Optional Login As String, Optional Password As String) As Boolean
  'ZVI:2017-01-07 Download UrlFile and save it to PathName.
  '               Use optional Login and Password if required.
  '               Returns True on success downloading.
    Dim b() As Byte, FN As Integer
    On Error GoTo exit_
    If Len(Dir(PathName)) Then Kill PathName
    With CreateObject("MSXML2.XMLHTTP")
      .Open "GET", UrlFile, False, Login, Password
      .send
      If .Status &lt;&gt; 200 Then Exit Function
      b() = .responseBody
      FN = FreeFile
      Open PathName For Binary Access Write As #FN
      Put #FN, , b()
  exit_:
      If FN Then Close #FN
      Url2File = .Status = 200
    End With
  End Function
  </code></pre>
  
  <p>However, every time I run the code, it will only create an empty zip file instead of downloading the file.</p>
  
  <p>Any help?</p>