Attribute VB_Name = "Module2" Option Explicit '****************************************************************************** 'REST API呼出処理 ' method GetかPOSTか ' url REST APIのURL ' urlParam リクエストパラメータ(オプション) ' headers ヘッダ(オプション) Function callRestApi(Byval method As String, Byval url As String, Optional Byval urlParam As String = "", Optional Byval headers As Dictionary = Null, Optional Byval body As Dictionary = Null) As Object 'HTTPリクエストのオブジェクトを定義 Dim objHTTP As Object Set objHTTP = New XMLHTTP60 'HTTPリクエストの接続先を設定 objHTTP.Open method, url & urlParam, False 'リクエストヘッダーを設定(複数ある場合はsetRequestHeaderを複数書けば良いのだ〜) Dim i As Long For i = 0 To headers.count - 1 objHTTP.setRequestHeader headers.keys(i), headers.items(i) Next i 'リクエスト送信 objHTTP.send JsonConverter.ConvertToJson(body) Do While objHTTP.readyState < 4 DoEvents Loop 'レスポンスの文字列(objHTTP.responseText)をJsonに変換して返却 Set callRestApi = JsonConverter.ParseJson(objHTTP.responseText) End Function '文字列の日付を変換 Function 日付変換(Byval dateVal As String) As Variant If dateVal = "1899-12-30T00:00:00" Then 日付変換 = "" Elseif dateVal = "" Then 日付変換 = "" Else dateVal = Replace(dateVal, ".000Z", "") 日付変換 = CDate(Replace(dateVal, "T", " ")) End If End Function 'シートの存在確認 Function シート確認(SheetName As String, Optional wb As Excel.Workbook) As Boolean Dim Sh As Excel.Worksheet If wb Is Nothing Then Set wb = ThisWorkbook On Error Resume Next Set Sh = wb.Sheets(SheetName) On Error Goto 0 シート確認 = Not Sh Is Nothing End Function