IEのサポートがWindows11で完全終了してしまいましたね。(2021/10/05冒頭に追記)
そんな感じで下記の質問が来たので対応策の参考になれば

下記いただいた質問
>ExcelVBAでデータを集め、競輪予想を作っています。



>さて最近、IEのサポート終了が告知されていますが
>WEBからのデータ取得はどのような対処がベターなのでしょうか?ご意見をお聞かせください。

ベター、ベスト、イロイロな考え方がありますが、
1.MSXML2.XMLHTTP などでHTMLを取得して、CreateObject("htmlfile") を使う
下記の例題動画、なんだか私の解説はイマイチだった・・・やはり、素直にSelenium VBAなのかなぁ。
Set objHTML = CreateObject("MSXML2.XMLHTTP")
でHTMLを取得して、使ってみたり

https://www.youtube.com/watch?v=RjZZUq40gxY
目次
00:00 0.IEが無くなるので CreateObject("htmlfile")
00:26 1.DoEventsがないと処理が追い付かない?
03:25 2.oDocument.write って追記なの?
07:23 3.JRAオッズ取得を例題にデバッグ
08:17 文字化けの説明
10:00 CreateObject("htmlfile")でDocumentを作り
10:36 リンクからオッズのAタグを取り出す
12:02 URLとパラメーターを切り出す
12:57 POST処理 URLとパラメータをPOSTしてHTML結果をGet
13:48 取得したHTMLをデバッグ用テキストファイルへ落とす
14:22 再度 CreateObject("htmlfile")でDocument
14:50 開催地と開催日のリンクをあさる
16:45 1Rからオッズを取得 最終取得後はスキップ
17:03 11Rのリンクを取り出す
18:03 11レースのオッズページHTMLを取得する
19:50 オッズ取得イメージ
20:30 おわりの挨拶

次に、
IE操作の時は、.ClickでJavaScriptを気にしなかったのに、
動作の中身を探ったり・・・


https://www.youtube.com/watch?v=NPnKju8rkVw
doActionのコードでcommForm01に値をセットして.Submit
ActionがPOSTなので、FormのPOST送信でした
目次
00:00 あいさつ、はじめに
00:25 1.JRAのHPを表示させます
00:39 2.ソースを表示します
01:29 2.1 ソースの頭でjavascriptのコードがまとめてインクルード
02:02 2.2 doActionのコードをみると
03:22 2.3 元のソースでcommForm01を探すと
04:42 3.終わりのあいさつ

まぁ、こんなことするなら、素直に

2.素直にSelenium VBAでやりましょう
キーワード Selenium で検索すると流行の方法がわかるかなぁ
google:Selenium VBA
https://www.google.com/search?q=Selenium+VBA
↑で検索したり

ブラウザでchromeを使うパターンを探したかったら、
google:Driver.Start chrome
https://www.google.com/search?q=Driver.Start+chrome
↑とクロームを操作するときの、決まり文句でサンプルを探してみたり。

あとは、いままで使っていたキーワードとSelenium VBAを合わせて

google:Click Selenium VBA いつものクリックを探してみたり
https://www.google.com/search?q=Click+Selenium+VBA
↑いろいろサンプルが見つかる

google:ElementById Selenium VBA よくやるIDで探すサンプルとか
https://www.google.com/search?q=ElementById+Selenium+VBA
↑いろいろサンプルが見つかる




と、
全て、Google頼みの回答でした。

なんとなく、自分の言葉、体験、実例の回答になってなく
検索結果に逃げているなぁと思いつつ、
無事に移行できるといいですね。 三流プログラマー Ken3

はじめは[WebBrowserを参照設定]から入り
[VBAでIE操作解説]やってます。
よく使う.Document:の解説から
[.Forms]で入力処理
[.Links]でリンク情報取得
[.Images]で画像の情報
[.Frames]でフレーム処理
[.Script]でスクリプト処理
...など、まだまだ抜けてますが、
手探りで[ヘルプ IEのオブジェクトを探る]
IE,WebBrowser:
[IE プロパティ(各種設定)]
[IE メソッド(イロイロな動作)]
[IE イベント(発生後処理)]
[VBAでIE操作(TOP)]
小さな[IE操作のサンプル]でTEST
次に[少し大きなIEを使ったサンプル]
にチャレンジしたり
[IE関係記事一覧]

[VBA(TOP)]
[三流君(TOP)]


全ての質問には、答えられませんが、リクエストや質問があったら、[作者(三流君)に質問する] から 気軽に送ってください

三流君VBAでIE操作 まずは、参照設定から

挨拶:VBAで(ExcelやAccessなどから)InternetExplorer WebBrowserを操作してみたいと思います。
と、カッコつけてかなり昔にスタートしました。当初はそんなに読者も居なかったのですが、おかげさまで最近は大盛況です。
いつも私が使っている、
Dim objIE as Object
Set objIE = CreateObject("InternetExplorer.application")
なのですが、
参照設定を行っていないので、.(ドット)を押しても、プロパティやメソッドの候補が出てきません(涙)。

IE Web Browser を使う場合の参照設定

IE操作のプログラムを組む前に まずは、参照設定です。
コードを書くとき、探る時、参照設定しておくと .ドットをタイプした時にメソッドやプロパティが表示されるので便利です。下記 私が操作した参照設定の方法です。

VBAのコード編集画面で、
メニュー -- ツール -- 参照設定 を選択後、
下記の2つにチェック(レ)を入れてください。

□ Microsoft HTML Object Library

□ Microsoft Internet Controls
(※↑がもし見つからない場合は、
Microsoft Browser Helpersに
チェックを入れてください。)
チェックを入れると、
Dim oIE As InternetExplorer

Dim oBODY As HTMLBody
などが使えるようになります。

操作手順の動画:IE Web Browser 操作 参照設定をしましょうね。

操作例2

ツールの参照設定からやってもいいし、WebBrowser を Excel UserFormに貼って使う、そんな方法もあります。
↓Dim ie As InternetExplorer を 使いたい時

(大きな動画で見る↑)
↓UserFormに Web(IE) を貼って操作する場合

(大きな動画で見る↑)
最近の記事:[No.180 IE操作 .parentElement で親のタグを参照?]
関連項目:
[WebBrowser を Excel UserFormに貼り使用したサンプル]
※はじめの一歩として、参照設定してくださいね。(コードはキレイに読みやすく?)

IE操作に興味を持ったら、[VBAからIEを自動操作 CreateObject(" InternetExplorer.application" )]・・・VBAでIEを操作するサンプルを見てください。

逃げるように 終わりの挨拶

入り口を間違えないで、みなさんは参照設定から行ってくださいね。
※まだまだ、確認すること、やることいっぱいだぁ。。。


[#BackNoLink][ページ内のTOPへ戻る]

過去のメールマガジンのリンクが長かったので、下記に移動しました。
[IE操作 メルマガ 一覧]
よろしくお願いします。


改版履歴 更新情報:過去のIE操作の解説はこちら↓(IE6+XP,IE7+XPの古い記事もアリ)
2009-12-01:[過去の解説 vba_ie_20091201.asp]
2009-06-01:[過去の解説 vba_ie_20090601.asp]
2009-02-01:[過去の解説 vba_ie_20090201.asp]
2008-05-01:[過去の解説 vba_ie_20080501.asp]
2007-08-31:[過去の解説 vba_ie_20070831.asp]
2007-05-20:[過去の解説 vba_ie20070520.asp]

2012-03-19:[過去の解説 vba_ie_20120319.html]
もあわせてみてください。
(↑もしかして書き直さない過去の解説の方がよかったかも?(笑))




[ページ内のTOPへ戻る]

ページフッター

Googleで情報を探す

せっかくホームページに来ていただいたのに、検索の紹介 ぉぃぉぃ
サイト指定や期間の指定を組み合わせて実行してみてください。

Google
探す言葉:
ググる。↑VBAなど 気になる単語や,オブジェクト(MailItem),プロパティ(.Body)やメソッド(.Move)などを入れて検索してみてください。

サイト指定:人気QAサイト や 一次情報MS本家を指定する
条件無し WWW 全体から検索も良いけど↓で絞り込むのもおススメです
一次情報・二次情報まとめから探る
一次情報は基本のMSDN含む microsoft.comから
まとめ一次・二次情報 Qiita 知識を記録・共有 qiita.comで個人まとめを参考に
手前味噌の三次情報 三流君メモBlog ken3memo.hatenablogから検索
QAサイトの質問から探る
QAはやっぱり人の多いYahoo知恵袋 chiebukuro.yahoo.co.jpから探る
こちらもどうぞ おしえてgoo! oshiete.goo.ne.jp
15分探して見つからなかったら?回答率90%以上 teratail.com
私も利用中 最近過疎ってる失礼 人力検索 q.hatena.ne.jp
意外と穴場? 2ch 5ch.netから探す
検索実行: ←オプション確認後に検索ボタンを押してください

期間指定:情報の鮮度も大切?
指定なし(全て)※不変の情報を得るには指定無しが一番?
3日以内 最新の更新情報を探す時など。
3ヶ月 これはあまり使わないかも
1年以内の更新なら情報鮮度もOK?バランス型
3年も経てばOfficeもバージョンUP?
検索実行: ←オプション確認後に検索ボタンを押してください

メッセージ送信

ここまで、読んでいただきどうもです。ここから下は、三流君宛のメッセージ送信や 三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、

感想や質問・要望・苦情など 三流君へメッセージを送る。[#QA_MESSAGE]


あなたのお名前(ニックネーム):さん
返信は?:

アドレス:に返事をもらいたい
感想や質問↓:



(感想や質問・要望・苦情はHPで記事に載せることがあります。)
例:[XXXXさんへ回答例]←みたいに回答していたり...

急ぎで連絡がほしい、そんな時は:[twitter三流君]に気軽に連絡してください。




[三流君(TOPへ)] / [VBAで楽しく] / [記事一覧]
カスタム検索