私はVBAでxmlを使用しています。以下のコードは、リモートWebサイトのショッピングカートに商品を追加します(フォームを投稿します)。次に、コードは結果をInternet Explorerに表示します。自動xmlフォーム投稿後のVBAでは、どのようにしてレスポンスとのやりとりを自動化できますか?
回答に「見積もりを取得」ボタンが表示されます。私はそれを自動的にクリックし、位置情報を入力し、私のExcel 2010ワークシート上の配送料と税金(カートに入っている商品のための)の返答を得る必要があります。
可能な場合はブラウザを介さずにショッピングカートに商品を追加したときと同じように、サイト(サイトのサーバー?)ですべての自動化されたクリックおよび入力データが直接発生するようにします。ページが読み込まれるまでには長い時間がかかります。ブラウザを使用すると、xmlを使用せずにそれを行うことができます。しかし、私は大丈夫ですブラウザを読み込まなければならない場合、私は本当に立ち往生しています。あなたは何ができるか
Option Explicit
Sub testing()
Dim objIE As Object
Dim xmlhttp As Object
Dim response As String
Set objIE = CreateObject("InternetExplorer.Application")
objIE.navigate "about:blank"
objIE.Visible = True
Set xmlhttp = CreateObject("MSXML2.ServerXMLHTTP")
'~~> Indicates that page that will receive the request and the type of request being submitted
xmlhttp.Open "POST", "http://www.craft-e-corner.com/addtocart.aspx?returnurl=showproduct.aspx%3fProductID%3d2688%26SEName%3dnew-testament-cricut-cartridge", False
'~~> Indicate that the body of the request contains form data
xmlhttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
'~~> Send the data as name/value pairs
xmlhttp.Send "Quantity=1&VariantID=2705&ProductID=2688"
response = xmlhttp.responseText
objIE.Document.Write response
Set xmlhttp = Nothing
End Sub
「VBA自動化IE」のためのGoogleの場合は、このタイプのタスクの例がたくさんあります。例:http://www.jpsoftwaretech.com/excel-vba/automate-internet-explorer/ –
いいえ、私は起こることの層が1つではなく必要です。私は、自動化されたイベントのさらなる層なしで1つのことをすることができます。 – user1140067
また私は役に立たないとあなたが投稿したチュートリアルはxmlhttpなしで対話するVBAのブラウザを読み込むためです。 – user1140067