郊外暮らしの最適ライフ

最適なハッピーライフを目指しま~す。テーマは、「食」「投資」「教育」です。郊外で、エンジニア&教師してます。

【エクセルVBA実践3】 スクレイピング(ネット情報を集める) ② HTML 解析とコーディング

実践パート3の”スクレイピング”のマクロ作りについて解説しています。
なお、この実践編は、業務に応用したい方向けです。 概要編は、別にありますのでそちらも参考にしてください。

                            • -

・前回:「スクレイピング①」として、課題と環境設定について解説します。
・今回「スクレイピング②」として、HTML 解析とコーディングについて解説します。

                            • -

■HTML を調査する

まずは、 情報を集めるために必要な要素が何かを調査します。
chromのデベロッパーツールが、 非常に便利なので活用します。

■コーディング (最終行を取得する)

・最終行を取得する方法
Cells(1, 1). Select
Dim maxrow As Long
maxrow = Cells (Rows.Count, 1). End(xlUp).Row
maxrow = maxrow + 1
・日付を取得する方法
Cells (maxrow, 1). Value = Date

■コーディング (データを取得し、貼り付ける)

・データを取得 (例として原油先物)
ie. Visible = True
ie. navigate "https://jp. investing.com/commodities/crude-oil"
→ここに、 取得対象のURLを!
Do
DoEvents
Loop Until ie.readyState = READYSTATE_COMPLETE
Set doc = ie.document

・データを貼り付け
Cells (maxrow, 3). Value=
doc.getElementsByClassName ("trading-hours_value_2MrOn") (0) innerHTML
→"trading-hours_value_2MrOn" が、 セレクタの要素になります。

後は、必要な項目分を、同じように追記して完成です。

ボタンの配置方法については、概要編に記載がありますので、割愛させていただきます。

URLやセレクタの要素が、 突然変更されたりしますので、 そのたびにメンテナンスが必要になります。 知ってる人ぞ便利な、 マクロかもしれません。

↓おすすめ参考書

Excel VBA塾 初心者OK! 仕事をマクロで自動化する12のレッスン [ たてばやし 淳 ]

価格:2,409円
(2022/9/3 09:47時点)
感想(8件)


rpx.a8.net

rpx.a8.net

    • ** ** お知らせ ** **--

■生徒募集中

個別指導(オンライン・訪問)のご希望がございましたら、直接ご連絡くださいませ。

 Email : tpgun01234@gmail.com
 twitter : @yukitakada13
 YouTube :    https://www.youtube.com/channel/UC0bBqhuLGmH9f608vdeSYIQ

■「荷物の置き場所に困った…」を解決!
埼玉で、レンタル収納 モノオクサービスを提供しています。ご興味ありましたら是非!
 https://monooq.com/space/7584?via=keyword

    • ** ** ** ** ** **--

#業務効率 #エクセルVBA #プログラミング #マクロ #スクレイピング