- VB,VBA
- 2014-05-27 - 更新:2022-09-24
この記事は最終更新日から1年以上経過しています。
MSXML2.XMLHTTPオブジェクトを利用してWEB上のデータを取得したり、PHP等のプログラムへデータを送信することができます。
ACCESS等で入力したデータをすぐにWEBに反映させたいとき等に便利です。
まずは宣言
Dim xmlHttp as Object 'HTTPリクエストオブジェクト Dim url As String 'リクエストを送るURL Dim strParam As String 'リクエストパラメータ Dim strRes As String '結果を受け取る変数
HTTPリクエスト用オブジェクトのバインド
Set xmlHttp = CreateObject("MSXML2.XMLHTTP")
・GET送信
リクエストするURLを指定
url = "http://www.example.jp/index.html"
With xmlHttp .Open "GET", url, False .SetRequestHeader "Content-Type", "application/x-www-form-urlencoded" .Send strRes = .ResponseText End With
・POST送信
PHP等で作成したプログラムのURLを指定
url = "http://www.example.jp/example.php"
送信するパラメータの設定
strParam = "msg=テスト"
With xmlHttp .Open "POST", url, False .SetRequestHeader "Content-Type", "application/x-www-form-urlencoded" .Send (strParam) strRes = .ResponseText End With
openメソッドの書式
open(strMethod, strUrl[, varAsync[, strUser[, strPassword]]])
strMethod | GETまたはPOST等のメソッドを指定します |
---|---|
strUrl | リクエストを送るURL |
varAsync | 同期(True(失敗したらエラーが発生))/非同期(False)を指定します(省略可)既定値:True |
strUser | 認証が必要な場合、ユーザー名を指定します(省略可) |
strPassword | 認証が必要な場合、パスワードを指定します(省略可) |
レスポンスをメッセージボックスで表示します。
If Trim(strRes) <> "" Then MsgBox strRes
オブジェクトを解放
Set xmlHttp = Nothing
55,585 views