none
MSXML2.XMLHTTP60オブジェクトのresponseTextの値取得について RRS feed

  • 質問

  • Microsoft Excel for Microsoft 365 MSO (バージョン 2208 ビルド 16.0.15601.20148) 64 ビット

    Dim xml As New MSXML2.XMLHTTP60

    と宣言した変数xmlのOpenおよびSendメソッドを実行しresponseTextの結果を確認しました。

    Debug.Print(xml.responseText)の内容

    {"token_type":"Bearer","expires_in":3599,"ext_expires_in":3599,"access_token":"eyJ0eXAiOiJKV1QiLCJub25jZSI6IjZkcEJKWnc2NkFFcmpEV3hjNzV2NFhrTEU4WlFWaWZ6a0tzMTE4Vjc0MFUiLCJhbGciOiJSUzI1Ni・・・約1490文字"}

    xmlのStatusとStatusTextは200と”OK”で、処理には成功しております。

    responseTextの"access_token"の値であるeyjから始まる1490文字を取得したいのですが、

    Dim doc As MSHTML.HTMLDocument
    dim val as Variant
    
    Set doc = New MSHTML.HTMLDocument
    doc.Body.innerHTML = xml.responseText
    
    ' ここでエラー
    ' オブジェクト変数またはWithブロック変数が設定されてません。
    val = doc.getElementsByName("access_token")(0).Value

    エラーが返され取得することができません。

    xml.responseTextの中の"access_token"の値の取得方法についてご教示ください。


    • 編集済み GPKuma 2022年9月29日 5:57 追加
    2022年9月29日 5:55

回答

すべての返信