【VBA】WebページのファイルをURLDownloadToFile関数を使用するダウンロード方法
VBAでWebページのファイルをダウンロードしたい人向けに書いています。
本記事の内容
・WebページのファイルをURLDownloadToFile関数を使用してダウンロードする方法
VBA(マクロ)で自動的にWebページのファイルをダウンロードしたいと思っていませんか?
Webページのファイルをダウンロードする方法を紹介します。
WebページのファイルをURLDownloadToFile関数を使用してダウンロードする方法
以下がWebページのファイルをURLDownloadToFile関数を使用してダウンロードするプログラムです。
- ’64bit版
- #If VBA7 And Win64 Then
- '指定URLファイルのダウンロード
- Private Declare PtrSafe 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
- 'キャッシュクリア
- Private Declare Function DeleteUrlCacheEntry Lib “wininet" Alias “DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long
- ’32bit版
- #Else
- '指定URLファイルのダウンロード
- 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
- '// キャッシュクリア
- Private Declare Function DeleteUrlCacheEntry Lib “wininet" Alias “DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long
- #End If
- '*****************************************
- '* Webページファイルダウンロード
- '*****************************************
- Sub URL_FILE_DL()
- Dim lngRes As Long 'Webページダウンロード判定
- Dim DL_FILE_URL As String 'Webページファイルアドレス
- Dim DL_FILE_PATH As String '保存先ファイルパス
- 'Webページファイルアドレス
- DL_FILE_URL = “https://msedgedriver.azureedge.net/102.0.1245.44/edgedriver_win64.zip"
- '保存先ファイルパス
- DL_FILE_PATH = “D:\Webページ保存ファイル\edgedriver_win64.zip"
- 'キャッシュクリア
- Call DeleteUrlCacheEntry(DL_FILE_URL)
- 'Webページファイルダウンロード
- lngRes = URLDownloadToFile(0, DL_FILE_URL, DL_FILE_PATH, 0, 0)
- 'ダウンロード完了判定
- If lngRes = 0 Then '完了
- MsgBox DL_FILE_URL & “:ダウンロード完了"
- Else
- MsgBox DL_FILE_URL & “:ダウンロード失敗"
- End If
- End Sub
26行目:WebページファイルのURLアドレスを設定
28行目:保存先のファイルパスを設定
本プログラムではMicrosoft EdgeのWebドライバーをダウンロードするプログラムにしています。
WebページファイルのURLアドレスはWebページのダウンロードリンクを右クリックし、「リンクアドレスのコピー」をクリックして取得しています。
まとめ
WebページのファイルをURLDownloadToFile関数を使用してダウンロードする方法を紹介しました。
最後までご覧いただき、ありがとうございました。
「【ExcelVBA】HTTP/HTTPS通信によるWebページ情報取得の方法」も紹介していますので、もしよろしければこちらも御覧ください。

¥1,604 (2024/11/19 08:45時点 | Amazon調べ)

¥2,409 (2024/11/26 01:24時点 | Amazon調べ)

最近のコメント