タグ

2021年1月24日のブックマーク (2件)

  • 【ExcelVBA】HTTP/HTTPS通信でWebページを取得する - Qiita

    はじめに 業務でVBAのプログラムを作っていた時に、内閣府の祝日情報を扱いたいと思ったのですが、VBAではお手軽にHTTP/HTTPS通信出来る組み込みの関数が用意されていませんでした。 (※内閣府の祝日情報はCSV形式で提供されています。) そこで様々なサイトを参考にしながら、HTTP/HTTPS通信でWebページを取得できるモジュール(クラス)を作成してみました。 作成したクラス VBAでHTTP通信するプログラムを作るにあたり、こちらの記事を参考にしてベースのプログラムを作りました。 また、HTTPS通信に対応させるにあたって、こちらの記事を参考にしました。 幾つかのサイトで紹介されていたサンプルコードにはCreateObject("MSXML2.XMLHTTP")が使われていましたが、この書き方だとTLS1.2を利用しているページでエラーとなってしまいます。 HTMLではなく単なる

    【ExcelVBA】HTTP/HTTPS通信でWebページを取得する - Qiita
    teddy-g
    teddy-g 2021/01/24
    HTTPSでちゃんとresponseBody取れるのは良い。問題はUTF-8だ。
  • エクセルVBAでIEを使わずにHTMLドキュメントを取得する方法 | 隣IT

    エクセルVBAでHTTPリクエストをする方法をお伝えしました。 しかし、この方法で取得したHTMLドキュメントは”文字列”なんですね。 正規表現を使って処理をすることはできますが、getElement~メソッドを使ってIDやClass、タグ名などを使って要素を取り出すということが残念ながらできません。 ということで、今回はエクセルVBAでHTTPリクエストにより取得したHTMLテキストから、HTMLドキュメントオブジェクトを生成する方法をお伝えします。 つまり、IEを使わずにHTMLドキュメントを取得するということになります。 では、行ってみましょう。 前回のおさらいと今回のお題 まずおさらいからです。 前回のプログラムはこちらです。 Sub HTTPリクエスト() Dim httpReq As XMLHTTP60 Set httpReq = New XMLHTTP60 httpReq.O

    エクセルVBAでIEを使わずにHTMLドキュメントを取得する方法 | 隣IT
    teddy-g
    teddy-g 2021/01/24
    HTMLDocumentにWriteすればエレメントでアクセスできるのは便利。