【松井証券 自動発注】IE制御でログインから一日信用の画面まで

SMBC日興証券にやる気をそがれたので、亀より遅い歩みでのそのそと。

松井証券の自動発注スクリプトでも作ってみようかな、と。
でも、売り建て可能の銘柄をちゃんと見てないけど厳しいのかな?

とりあえず、一日信用の画面まで行くコード載せますね。

Sub MATUI_Login()

‘変数の宣言
Dim objIE As Object
Dim objTag As Object

‘お約束
Set objIE = CreateObject(“InternetExplorer.application”)
objIE.Visible = True

‘ログイン画面
objIE.navigate “https://www.deal.matsui.co.jp/ITS/login/MemberLogin.jsp”
IE_Complete objIE

‘ID、パスワード
objIE.Document.all.clientCD.Value = “ID”
objIE.Document.all.passwd.Value = “パスワード”

‘ログインボタン
For Each objTag In objIE.Document.getElementsByTagName(“input”)
If objTag.src = “https://www.deal.matsui.co.jp/parts/image/btn_login.gif” Then
objTag.Click
Exit For
End If
Next
IE_Complete objIE

‘一日信用の画面へ
Dim objFRAME As Object
Set objFRAME = objIE.Document.frames

Dim objLink As Object

For Each objLink In objFRAME(“GM”).Document.getElementsByTagName(“A”)
If objLink.innerText = “一日信用” Then
objIE.navigate objLink.href
Exit For
End If
Next

End Sub

‘表示待ち
Public Sub IE_Complete(ByVal objIE As Object)

Do While objIE.Busy = True
DoEvents
Loop

Do While objIE.Document.readyState <> “complete”
DoEvents
Loop

End Sub

28行~39行が最大の鬼門ですかね。
僕も以前、これが原因で立花証券の発注ができなくて、親切なお兄さんに教えていただきました。

For Each objLink In objFRAME("GM").Document.getElementsByTagName("A")

詳しい解説はしませんけど、マルチ(多重)フレーム構造、っていうんですかね?
オブジェクトにフレーム名を指定しなければならない。フレーム名ソースを見ればわかります。

自信はないので、もっといい方法あったら教えてください♪
まあ、たぶん立花さんでやると思うけど…