仕事で、祝日を取得する必要があったのでちょっとツールを作成
参照設定
Microsoft XML を参照設定する。

VBAのコード
XMLHTTPオブジェクトの機能で、内閣府のHPから祝日情報(CSVファイル)をダウンロードする。
ダウンロードしたファイルを、Excelシートに出力させる。
Sub 内閣府のHPから祝日情報をダウンロードしてExcel出力() '参照設定: Dim httpReq As XMLHTTP60 Set httpReq = New XMLHTTP60 Dim httpDoc As DOMDocument60 httpReq.Open "GET", "https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv" httpReq.send Do While httpReq.readyState < 4 DoEvents Loop If httpReq.status = 200 Then Debug.Print StrConv(httpReq.responseBody, vbUnicode) Call writeExcel(StrConv(httpReq.responseBody, vbUnicode)) Else Debug.Print "HTTP StatusCode:" & httpReq.status & ", HTTP StatusText:" & httpReq.statusText End If Set httpReq = Nothing End Sub Sub writeExcel(ByVal responseBody As String) Dim CSVRec() As String Dim v() As String Dim i As Long, j As Long CSVRec = Split(responseBody, vbCrLf) For i = 0 To UBound(CSVRec) Debug.Print CSVRec(i) v = Split(CSVRec(i), ",") For j = 0 To UBound(v) ActiveSheet.Cells(i + 1, j + 1) = v(j) Next j Next i End Sub
httpReq.Open "GET", "https://www8.cao.go.jp/chosei/shukujitsu/syukujitsu.csv"
このURLを変更すれば、内閣府に限らず別のアップロード済みCSVファイルを取得しExcelシートに出力できる。
コメント