2017-06-20 8 views
0

誰かがExcel VBAでこのファイルをどのように入手できるのかを知っていますか?VBA Dowloadのファイル(ddosから保護されたウェブサイト)

https://www.centralbankmalta.org/site/excel/statistics/financial_market_int_rates.xls

もう私はこのコードを使用し、今ではdoesn't仕事:

Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long 

URLDownloadToFile 0, "https://www.centralbankmalta.org/site/excel/statistics/financial_market_int_rates.xls", "X:\TESORERIA\07 Prestamos\Préstamos 2016\financial_market_int_rates.xls", 0, 0 

を私もして試してみました:この情報は代わりに

Sub download2() 

Dim FileNum As Long 
Dim FileData() As Byte 
Dim WHTTP As Object 

mainUrl = "https://www.centralbankmalta.org/" 
fileUrl="https://www.centralbankmalta.org/site/excel/statistics/financial_market_int_rates.xls" 
filePath = "X:\TESORERIA\07 Prestamos\Préstamos 2016\financial_market_int_rates.xls" 

Set WHTTP = CreateObject("WinHTTP.WinHTTPrequest.5.1") 

WHTTP.Open "POST", mainUrl, False 
WHTTP.SetRequestHeader "Content-Type", "application/x-www-form-urlencoded" 

WHTTP.Open "GET", fileUrl, False 
WHTTP.Send 

FileData = WHTTP.ResponseBody 
Set WHTTP = Nothing 

FileNum = FreeFile 
Open filePath For Binary Access Write As #FileNum 
Put #FileNum, 1, FileData 
Close #FileNum 

End Sub 

このコードのダウンロードを数字 enter image description here

だから私は問題がddosの保護であることを納得させる...または私はオフィス2010を365に更新したことができますか?お時間を

おかげ

+0

DDOS保護は問題の重要な部分ですか? –

+0

私は確信していません、私はそれをつかむだけです。私は質問 – Victor

+0

を詳述しました。 'WinHTTP.WinHTTPrequest.5.1'の代わりに' MSXML2.XMLHTTP'と 'MSXML2.ServerXMLHTTP'を試してください。あなたのコード[私のためにうまくいく](https://i.stack.imgur.com/wlkJc.png)。 – omegastripes

答えて

1
call shell("https://www.centralbankmalta.org/site/excel/statistics/financial_market_int_rates.xls") 

または

call shell("iexplore https://www.centralbankmalta.org/site/excel/statistics/financial_market_int_rates.xls") 

は、最も基本的な方法だろう。それが必要な場合は、Webブラウザコントロールを使用してURLを指定することができます。それは、ブラウザがそれを扱うように動作するようにトリガします。

+0

あなたの答えをありがとうが、私はそれが可能であれば、IEのインスタンスを実行することを好むだろう – Victor

+0

サーバがリダイレクトを持っているように見えます。私はそれを回避する方法がわかりません。 –

関連する問題