[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『IE操作 IE内のボタンを押したい』(初心者8)
お世話になります、初心者オヤジです。
IEの操作をしていてユーザー名とパスワードを入力後ボタンが押せないページがあります。ご教授願います。
ボタンのソースは
<input id="submitButton" name="submit" value='ログイン' type="submit" class="buttonRounded buttonBlue" />
書いているコードは
obIE.Document.getElementsByName("submit")(0).form.submit
他のページは同様のコードでボタンが押せるのですが上記のボタンだけ押せません。
お時間の余裕のある方 回答いただけると助かります。
使用IE Ver.11
< 使用 Excel:Excel2010、使用 OS:Windows7 >
どのサイトなのか、はっきりしないと確実なアドバイスはできません。 下記の方法でもダメなら、URLを教えてください。
初心者8さんは、「obIE」としていますが、これを「objIE」としています。 「obIE」でもいいですが、「objIE」と書くのが一般的らしいので。 (私も使用IEは、Ver.11です)
Set objIE = CreateObject("InternetExplorer.application") になっているとして、
STEP1■Nameで試す■<input name="submit" type="submit"> ********************************************************************************* objIE.Document.getElementsByName("submit")(0).Submit ********************************************************************************* としてみる。ダメなら(0)を(1)または(2)にしてみる。それでも、ダメなら、STEP2
STEP2■Classで試す■<input type="submit" class="buttonRounded buttonBlue"> ********************************************************************************* objIE.Document.getElementsByClassName("buttonRounded buttonBlue")(0).click ********************************************************************************* としてみる。ダメなら(0)を(1)または(2)にしてみる。それでも、ダメなら、STEP3
STEP3■Valueで試す■<input type="submit" value='ログイン'> 「value="ログイン"」ではなく、「value='ログイン'」なんですか?? ********************************************************************************* Dim objINPUT2 Set objINPUT2 = objIE.Document.getElementsByTagName("INPUT") Dim ii For ii = 0 To objINPUT2.Length - 1 If Instr(objINPUT2(ii).Value,"ログイン") > 0 Then objINPUT2(ii).Click Exit For End If Next ********************************************************************************* としてみる。 (マリオ) 2017/02/14(火) 15:50
■idで試す■<input id="submitButton" type="submit"> ********************************************************************************* objIE.Document.getElementById("submitButton").click ********************************************************************************* 「(0).Submit」となっているところを「(0).click」としてみる。 逆に、「(0).click」となっているところを「(0).Submit」としてみる。 それか、「(0)」を取り除いて、 単に、「.click」または「.Submit」としてみる。 この辺、私は適当にやってます。 (マリオ) 2017/02/14(火) 15:51
'【記述例】(拡張子vbsのファイルでも使用可)
Dim strUserID , strPassword '〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓 strUserID = "■■■" strPassword = "▲▲▲" '〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓 Dim strURL strURL="http●●"
'---------- IEを起動する。 Dim objIE Set objIE = CreateObject("InternetExplorer.Application") With objIE .Visible = True .Top = 20 .Left = 20 .Width = 1200 .Height = 700 End With '---------- 指定URL(strURL)を開く objIE.Navigate strURL Do While objIE.Busy = True Or objIE.readyState <> 4:Loop '---------- ID/PASSの入力、チェックを入れてサインイン objIE.Document.getElementById("●●").Value = strUserID objIE.Document.getElementById("●●").Value = strPassword objIE.Document.getElementsByName("●●")(0).Checked = True objIE.Document.getElementById("●●").click '---------- 後処理 Set objIE = Nothing (マリオ) 2017/02/14(火) 16:10
STEP1・2 はだめでした。
「value="ログイン"」ではなく、「value='ログイン'」なんですか?? これは 私も不思議に思っているのですが、「value='ログイン'」なんです。
idで試す 〜 も 検証していきます
取り急ぎ お礼と結果報告です。ありがとうございました。
(初心者8) 2017/02/14(火) 17:06
>初心者8さん どういたしまして。
STEP3は、下記サイト、ken3memo (三流君)を参考にしています。 http://d.hatena.ne.jp/ken3memo/20110721/1311244241 (マリオ) 2017/02/14(火) 17:20
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.