VBA開発

VBAでIE操作「パスワードボックスへ入力する」【エクセルマクロ】

VBAでIEを起動し、Webページ内パスワードボックスへ値を反映する方法です。
パスワードボックスは基本的にはテキストボックスへの処理と同一です。下記記事も参考にしてください。
VBAでIE操作「テキストボックスへ入力する」【エクセルマクロ】

パスワードボックスに文字入力するサンプルコード

楽天証券のサイトを参考にログインの一連の流れも踏まえてコード作成しています。

'■InternetExplorerでパスワードボックスへの値反映
Sub sample_IE_password_box_input()
    Dim objIE As InternetExplorer
 
    '■IEを起動
    Set objIE = CreateObject("InternetExplorer.Application")
    objIE.Visible = True
  
    '■該当ページへ遷移(楽天証券ログイン画面へ遷移)
    objIE.navigate "https://www.rakuten-sec.co.jp/ITS/V_ACT_Login.html"
    Call Call_IE_WaitTime
    
    '■ユーザーID
    objIE.Document.getElementsByClassName("vact-login-form-02-field__input")(0).Value = "1111"
    '■ログインパスワード
    objIE.Document.getElementsByClassName("vact-login-form-02-field__input vact-login-form-02-field__input--pass")(0).Value = "1111"
    '■ログインクリック
    objIE.Document.getElementByID("login-btn").Click
  
End Sub

'■HTMLサンプル
<input id="form-login-pass" type="password" name="passwd" value="" maxlength="20" tabindex="2" onfocus="chfocus('1')" class="vact-login-form-02-field__input vact-login-form-02-field__input--pass" autocomplete="on" style="width:100%;">

注意点

毎度おなじみですが、Call_IE_WaitTimeの処理はこちらを参照ください。

その他

Internet Explorerを使用して、Webスクレイピングは敷居が高い風に捉えられますが、
上記のように、パーツ化して組み合わせ処理するだけです。

Web上のデータを触りたい要望は会社様でも個人様でも多いと思います。
VBA IE操作を覚えて効率化しませんか?
作成が大変であれば弊社で代行開発も可能です。お気軽にお問い合わせください。

 

コメント

タイトルとURLをコピーしました