アプリ版:「スタンプのみでお礼する」機能のリリースについて

よろしくお願いいたします。

環境:Windows7 エクセル2013 です。

エクセルVBAで、みんなのFXというサイトに入りIDとパスを自動入力して
【FX WEB】ボタンを押して自動ログインしたいのですが、
# document ==$0 以降の要素を取得することができず、自動ログインできません。

うまく進める方法がございましたらご教授願います。

サイトURL
https://fxlive.min-fx.tv/comportal/LoginIndex.do

A 回答 (3件)

http://www.ken3.org/cgi-bin/group/vba_ie_frame.asp

この記事の参照設定は使ってますか?
オブジェクトブラウザに助けてもらうと
ヒントを得やすいと思います。
    • good
    • 0
この回答へのお礼

その記事にありますとおりフレームを取得して、そのフレームのDocumentから
入力、ログインすることができました!

yokomaya様のおかげで、素晴らしい知識をいただくことができました。
大変助かりました!ありがとうございました!!!

お礼日時:2017/03/10 11:11

htmlソースはお読みでしょうか?



私が最初気付いたのはLoginIndex.doの方には
そのログイン画面に表示されているソースが全くなくて
どっか別にあるんじゃないかなとソース内のURLを
探して打ってみたら、下の部分だけ表示されたので投稿した次第です。

しかし、(手動でもログインできず。。。)
となれば、フレーム表示されている状態で見るしかないのかなと
ieオブジェクト フレームで検索すると同等の処理をしている
ページはいくつか見つかります。

ただこのページはフレームと言ってもiframeだったので
それも確認すると
frames[iframeのname].documentから取れば良いかと。
という記述を見つけました。

実際には試してないですが、このあたり検討価値は
あるのでは?
    • good
    • 0

詳しくはわからないですが、ページのソースをぱっと見すると


https://fxlive.min-fx.tv/comportal/LoginWindow.do
こっちを解析しないといけないのでは?

あとVBAで何をお使いか?
例えばInternetExplorer WebBrowserオブジェクトとか
あるいは、誰の記事を参考に作ったかとか
現状をもう少し明らかにされたほうが、
コメントつきやすいと思います。
ちなみに私は三流君さんの記事で勉強しかけましたが
中断中・・・・。
    • good
    • 0
この回答へのお礼

ご回答いただきましてありがとうございます。
そのページ上で要素を取得することができ、IDとパスを入力することができました!
しかし、ボタンをクリックしても、このページではログインできないもようです。(手動でもログインできず。。。)
なかなか難しいですね。

コードは、ネット上によくある次のような作りにしてます。

Dim Doc As Object
Dim IE As InternetExplorer: Set IE = CreateObject("InternetExplorer.Application")
IE.Navigate "https://fxlive.min-fx.tv/comportal/LoginWindow.do"
Do Until IE.Busy = Flase And IE.Readstate = READYSTATE_COMPLETE
  DoEvents
Loop
For Each Doc In IE.Document.GetElementsByTagName("input")
  If Doc.Name = "longinId" Then
    処理
  End If
Loop

という書き方です。

お礼日時:2017/03/09 22:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!