EveOnlineというゲームで使用するExcelスプレッドシートを作成しています。私のスプレッドシートは、eve-marketdata.comというデータプロバイダーのWebサイトからデータを自動的に取得する必要があります。eve-marketdataの開発者ページ:http ://eve-marketdata.com/developers/item_history2.phpに、httpを介して「post」リクエストを送信することでデータをリクエストする方法についての説明があります。
例:市場履歴リクエストに使用されるURLは次のようになります:http: //api.eve-marketdata.com/api/item_history2.xml?char_name = venoushka patel次に、アイテムの45日間のデータを取得するとします。 id 34、リージョン10000002から。URLの最後に次のように配置します:item_id = 34、days = 45、region_ids = 10000022それぞれ、完成品の&記号で区切られます:api.eve-marketdata.com/api/ item_history2.xml?char_name = venoushka patel&type_ids = 34&region_ids = 1000002&days = 45(このサイトへの投稿規制によりhttp://を削除しました)
そのため、アイテムID、リージョンIDなどのスプレッドシートの情報を使用して、適切なURLを解析し、URLをサイトに送信してから、探している情報のみを取得して配置するための特定のセルが必要です。セルに。これは現在、xpathを利用する「importxml」機能のため、ExcelではなくGoogleドキュメントではるかに簡単です。ただし、Googleドキュメントではスプレッドシートあたりのxml呼び出しの数が50に制限されており、スプレッドシートには数千が含まれるため、Excelを使用する必要があります。
いいえ、「Webからのインポート」または「マップxml」をExcelのセル機能に使用するつもりはありません。これは、時間やリソースの効率が悪く、スプレッドシートで何千もの機能を実行できるためです。
これは、次のvbaコードを使用して実行できると言われています。
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP")
URL = "http://www.somedomain.com"
objHTTP.Open "POST", URL, False
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send ("")
問題は、Excelスプレッドシートのプログラミングは非常に得意ですが、これまでVBAを使用したことがないことです。Visual Basic Editorを開く方法は知っていますが、それだけです。最初に:
これをvbaエディターに貼り付けてから、ブックで呼び出すにはどうすればよいですか?関数()のようなものを最初に置き、最後に関数を置く必要があると思いますよね?
ワークシートでこの関数を呼び出して、必要なことを実行するにはどうすればよいですか?
誰かが上記のコードが何をするのか、そして私のタスクを実行するためにそれをどのように変更する必要があるのか説明できますか?
事前に、私はこれに関して受けたどんな助けにも本当に感謝します、そしてこれをする方法を必要とするコミュニティの大部分(そこに何千もあります)があります!