[[20170214113902]] 『IE操作 IE内のボタンを押したい』(初心者8) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『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

マリオさん
早速の回答ありがとうございます。また、たくさんの対応案大変感謝いたします。
対応結果 STEP3で 押下出来ました。
コードの意味は まだ 理解できていませんが 読み込んでいきます。

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.