excelに入力フォームを作成し、excelのシート上に記載する社内の旅費精算の簡略化を目指しています。
VBAでInternetExprolerを操作してyahoo路線から必要な路線情報を取得するコードを書こうとしています。
出発駅や時間など検索条件の操作を試みているのですが、一部のセレクトボックスの操作がうまくできません。
コードをみて原因がわかるようであれば回答をお願いしたい次第です。
VBA
コード
Dim IE As Object
'IE起動
Set IE = CreateObject("InternetExplorer.Application")
'IEの操作設定
IE.Visible = True
'サイトを開く
IE.Navigate "transit.yahoo.co.jp"
'IE読込待ち
Do While IE.Busy Or IE.ReadyState < 4
DoEvents
Loop
IE.document.getElementById("y").Value = "2020"
IE.document.getElementById("m").Value = "11"
IE.document.getElementById("d").Value = "10"
IE.document.getElementById("hh").Value = "09"
IE.document.getElementById("mm").Value = "00"
'検索
IE.document.forms("search").submit
'IE読込待ち
Do While IE.Busy Or IE.ReadyState < 4
DoEvents
Loop
乗換案内の日時の操作を試みているのですが、
IE.document.getElementById("mm").Value = "00"
の検索条件の”分”の操作がうまくいかず検索結果では現在の時刻の分数で検索されてしまいます。
"分"の部分のみセレクトボックスの選択ができないような状態です。
IE.document.getElementById("mm")(5).Selected = True
IE.document.all("mm")(2).Selected = True
のように必要部分のコードを変えてみてもどうにもうまくいきません。
該当部分の要素を検索すると以下の通りです。
<select id="mm"> <option value="00">00分</option> <option value="01">01分</option> <option value="02">02分</option> ・ ・ <option value="58">58分</option> <option value="59">59分</option> </select>原因がわかる方がいればご回答をよろしくお願い致します。
回答5件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/05/26 14:53