Quantcast
Channel: OKWAVE 最新質問(Visual Basic/257)【本日】
Viewing all articles
Browse latest Browse all 6510

【VBS】IEの新規タブでページを開いて自動操作

$
0
0
VBSでのIE制御について質問です。 既に開いているIEウィンドウで新規タブから指定ページを開いて、そのページ内でテキスト入力やボタンクリックを行いたいです。 (1)IEを新規ウィンドウで開いて、指定のページを開く。開いたページの各操作を行う (2)既に開いているIEウィンドウで新規タブから指定ページを開く の2つは行えたのですが、(2)で開いたタブ内のページを操作する方法がどうにも分かりません。 https://vba-code.net/ie/open-link-in-new-tab/ こちらのページ等を参考に、Navigate2で新規タブでページを開けるところまでは出来ました。 その後「'アクティブなタブの判定」で新しく開いたタブを操作できるようにしている様ですが、実際にテキスト入力やボタンクリックのアクションは行われませんでした。。 '---------------------------------------------------- Dim ie Dim objShell ,objWin '既に開いているIEを探す Set objShell = CreateObject("Shell.Application") For Each objWin In objShell.Windows If objWin.name = "Internet Explorer" Then Set ie = objWin Exit For End If Next '新規タブでページを表示 ie.Navigate2("サイトのURL"),&H800 ''アクティブなタブの判定(一旦コメントにしてあります) 'For Each ie In CreateObject("Shell.Application").Windows() ' 'ダミーのテキストを代入 ' ie.statusText = "test" ' If ie.statusText = "test" Then ' Exit For ' End If 'Next '表示したページが読み込まれるまで待機 ie.Visible = True While ie.ReadyState <> 4 WScript.Sleep(1000) Wend 'ページを操作 For Each obj In ie.document.getElementsByTagName("input") 'IDを入力 If obj.name = "id" Then obj.Value = "0123456" End If Next For Each obj In ie.document.getElementsByTagName("input") 'ログインをクリック If obj.name = "doLogin" Then obj.Click End If Next '---------------------------------------------------- 「vbs ie 新規タブ」等で調べて出てくるページは粗方調べましたが、イマイチやりたいことが出来そうなページは見つけることが出来ませんでした。 何か間違っている個所や漏れている個所あればご指摘頂けると幸いです。

Viewing all articles
Browse latest Browse all 6510

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>