本記事では しらかば堂の Access VBA 関数ライブラリ DownloadCsvFromUrl を使ってインターネット上に公開されているCSVファイルをワンクリックで利用者のPCのダウンロードフォルダヘダウンロードする方法を紹介します。
目次
Access VBA で ネットワークからCSVファイルをダウンロードしよう
では ここまでに作成してきたバッチファイル、 Access ツールの課題を抽出し、リファクタリングしていく考え方をご紹介しました。
今回の記事ではこの 記事#25 の中のリファクタリングの方針の16番目に記載された
Microsoft Edge を使用して実行していたインターネットからの
130001_tokyo_covid19_patients.csv
のダウンロード処理をしらかば堂のライブラリの中に準備されている関数 DownloadCsvFromUrl による直接ダウンロード方式に変更する
という方針を実装した
入手_130001_tokyo_covid19_patients_csv.accdb
というツールの作成方法について具体的にご紹介していきます。
このしらかば堂のライブラリ関数 DownloadCsvFromUrl はターゲットの CSV を URL で指定するだけで そのCSV ファイルを利用者のダウンロードフォルダ %USERPROFILE%\Downloads にそのままダウンロードできるので
この機能を利用して
東京都_新型コロナウイルス陽性患者発表詳細 に掲載された
URL: https://www.opendata.metro.tokyo.lg.jp/fukushihoken/130001_tokyo_covid19_patients_2020.csv
をダウンロードしようというわけです。
DownloadCsvFromUrl の組み込み方法
VBA 実装部分
この関数を Access に組み込むためには Access を 空のデータベースで立ち上げ
続いて テーブル1 を データーシートビューのタブの右にある × をクリックして削除したあと
リボンメニューの
データベースツール > Visual Basic
を順にクリックして VBE(Visual Basic Editor) を起動し
VBE のメニューから
挿入(I) > 標準モジュール(M)
を順にクリックして標準モジュールを挿入し
現れたコードウインドウに
から VBAコードをコピーし、VBEのコードウインドウにペーストし、さらに参照設定で EnjoyTech にチェックをしてVBEを閉じます。
マクロ 実装部分
そしてこの DownloadCsvFromUrl を呼び出すための autoexec マクロをマクロビルダ画面を使って
つまり次のように記述します。
If DownloadCsvFromUrl("https://www.opendata.metro.tokyo.lg.jp/fukushihoken/130001_tokyo_covid19_patients_2020.csv")>0
If文の最後
Accessの終了
この autoexec マクロが DownloadCsvFromUrl を呼び出すためのパラメータは以下のようになっていますね。
パラメータ番号 | 記述されたパラメータ値 | 説明 |
---|---|---|
1 | “https://www.opendata.metro.tokyo.lg.jp/fukushihoken/130001_tokyo_covid19_patients_2020.csv” |
インターネット上からダウンロードしたいCSVファイルのURLを指定しています。 |
そして autoexec マクロの編集が終わったらマクロビルダ画面 を閉じ、この Access ファイルを
%USERPROFILE%\Tools\accdb
配下に
入手_130001_tokyo_covid19_patients_csv.accdb
という名前で保存します。
この %USERPROFILE% は Windows であらかじめ定義されている環境変数で Windows PCを使っている利用者のデフォルトのフォルダパスを表しています。この環境変数については必要に応じて以下の記事を参照下さい。
ファイル出力先
この autoexec マクロを実行すると DownloadCsvFromUrl 関数が実行され
%USERPROFILE%\Download
配下に
130001_tokyo_covid19_patients.csv
がダウンロードされます。
この動作状況については必要に応じて 記事#25 の中の動画で確認してくださいね。
まとめ
いかがでしたか?
本記事では しらかば堂の Access VBA 関数ライブラリ DownloadCsvFromUrl を利用して 東京都_新型コロナウイルス陽性患者発表詳細 に掲載された
URL: https://www.opendata.metro.tokyo.lg.jp/fukushihoken/130001_tokyo_covid19_patients_2020.csv
をダウンロードフォルダ %USERPROFILE%\Downloads へ直接ダウンロードする方法を紹介しました。
さてこの記事全体の目標は
- 今の状況から抜け出してもっと前向きな仕事に取り組みたい
- さっさと仕事を切り上げて充実したアフターファイブを過ごしたい
でしたよね。
あなたの解決したい問題は何ですか?
次回はまた
で Access VBA の新しい窓を開きましょう。
Microsoft Access 関連教材は次のリンクからどうぞ。
いつも記事を読んで頂きありがとうございます~
今日の調子はいかがですか?