エクセルマクロ オンライン講座コメント紹介

コメント紹介
   └ エクセルマクロVBA「Web連携」
       └ エクセルマクロVBA「Web連携」Microsoft Internet Controls_Webコンテンツの取得

エクセルマクロVBA「Web連携」Microsoft Internet Controls_Webコンテンツの取得

[11301] 2019-03-28 11:33:13 ざきさんさんからの投稿です。

小川先生、こんにちは。質問です。
仕事でロリポップWebメーラーにある情報を抜き取る作業をしたいのですが、ログインするところで躓いています。

https://tools.lolipop.jp/mail/

メールアドレスとメールパスワードの自動入力はなんとかマクロで作成できました。
しかし、どうやっても「ログイン」の画像をクリックして送信する方法がわかりません。
ちなみに、「Microsoft HTML Object Library」と「Microsoft Internet Controls」は参照済みです。作成したエクセルファイルを添付します。
アドバイスをお願いします。

 


[11304] 2019-03-29 08:35:50 小川慶一さんからの投稿です。

ざきさんさん:

全体の添削かねて、2パターンほど書いてみました。
参考にしてください。

Option Explicit

Sub LoginLollipop1()
    Dim objIE As New InternetExplorer
    objIE.Visible = True
    objIE.navigate "https://tools.lolipop.jp/mail/"

    Do While objIE.readyState <> 4 Or objIE.Busy = True
        DoEvents
    Loop
    
    Dim div_login As IHTMLDivElement
    Set div_login = objIE.document.getElementById("login_main")
    Debug.Print div_login.innerHTML
    
    Dim m_add As HTMLInputTextElement
    Dim m_pass As HTMLInputTextElement
    Dim m_check As HTMLInputButtonElement
    Set m_add = div_login.getElementsByTagName("input")(0)
    Set m_pass = div_login.getElementsByTagName("input")(1)
    Set m_check = div_login.getElementsByTagName("input")(2)
    
    m_add.Value = "info@foo.bar"
    m_pass.Value = "hogehoge1234"
    m_check.Click
    
    Dim div_btn As IHTMLDivElement
    Set div_btn = objIE.document.getElementById("login_btn")
    Debug.Print div_btn.innerHTML
    
    Dim img As IHTMLImgElement
    Set img = div_btn.getElementsByTagName("img")(0)
    Debug.Print img.outerHTML
    
    img.Click
End Sub

Sub LoginLollipop2()
    Dim objIE As New InternetExplorer
    objIE.Visible = True
    objIE.navigate "https://tools.lolipop.jp/mail/"

    Do While objIE.readyState <> 4 Or objIE.Busy = True
        DoEvents
    Loop
    
    Dim div_login As IHTMLDivElement
    Set div_login = objIE.document.getElementById("login_main")
    
    Dim iElems As Object
    Set iElems = div_login.getElementsByTagName("input")
    Debug.Print TypeName(div_login.getElementsByTagName("input"))
    
    Dim i As HTMLInputElement
    For Each i In iElems
        Select Case i.Name
            Case "mail_add"
                i.Value = "info@foo.bar"
            Case "mail_pass"
                i.Value = "hogehoge1234"
            Case "auto_login_mail"
                i.Click
        End Select
    Next
    
    Dim div_btn As IHTMLDivElement
    Set div_btn = div_login.getElementsByTagName("div")(0)
    
    Dim img As IHTMLImgElement
    Set img = div_btn.getElementsByTagName("img")(0)
    
    img.Click
End Sub


> 小川先生、こんにちは。質問です。
> 仕事でロリポップWebメーラーにある情報を抜き取る作業をしたいのですが、ログインするところで躓いています。
>
> https://tools.lolipop.jp/mail/
>
> メールアドレスとメールパスワードの自動入力はなんとかマクロで作成できました。
> しかし、どうやっても「ログイン」の画像をクリックして送信する方法がわかりません。
> ちなみに、「Microsoft HTML Object Library」と「Microsoft Internet Controls」は参照済みです。作成したエクセルファイルを添付します。
> アドバイスをお願いします。

 


[11305] 2019-03-29 08:55:49 ざきさんさんからの投稿です。

小川慶一さん:
返信ありがとうございます。
内容を噛みしめて体に染み込ませます。

 


まずはここから!スマホでも学べる無料動画講座

今なら先着30名限定で無料!定価4,800円の、初心者のためのエクセルマクロ動画講座。
  1. Excel 97~Excel 2016まですべて対応。動画本数20本、総再生時間2時間44分53秒
  2. PC, Mac, iPhone, iPad, Androidのお好みの環境で、いつでも好きなときに学べます。
2004年から10年間述べ3,000名以上に実施した研修の経験と実績を集約した講座です。
いますぐ無料で試してください。

トップへ