Dim fuid(3) As Object Dim uidi As Integer, s As String, p(3) As String, s_key(5) As String uidi = 0 uid = Worksheets("account").Cells(2, 4) If uid = "" Then uid = "" 'uid = Application.InputBox("お客さま番号を入力してください", "お客さま番号", "", Type:=2) End If passwd = Worksheets("account").Cells(3, 4) If passwd = "" Then passwd = ""
End If passwd2 = Worksheets("account").Cells(4, 4) If passwd2 = "" Then passwd2 = "" 'passwd2 = Application.InputBox("ログインパスワードを入力してください", "ログインパスワード", "", Type:=2)
For Each objTAG In objIE.Document.all Debug.Print objTAG.tagName & ":" & TypeName(objTAG) Tag = objTAG.tagName If Tag = "INPUT" Then objName = objTAG.name If objName = "fldUserID" Then objTAG.Value = uid If objName = "fldUserNumId" Then objTAG.Value = passwd If objName = "fldUserPass" Then objTAG.Value = passwd2 Exit For End If 'If uidi = CInt(Worksheets("account").Cells(5, 4).Value) Then objTAG.Value = uid 'If uidi = CInt(Worksheets("account").Cells(6, 4).Value) Then objTAG.Value = passwd 'If uidi = CInt(Worksheets("account").Cells(7, 4).Value) Then objTAG.Value = passwd2 uidi = uidi + 1 End If xtype = TypeName(objTAG) inner = objTAG.innerhtml Next objIE.Document.all.Login.Click Call ie_wait(objIE) objIE.Visible = True s = objIE.Document.body.innerhtml i = 0 GoTo old_skip20070726 For Each objElement In objIE.Document.all.tags(tagName:="a") If i = 3 Then objElement.Click Exit For End If 'strTempText = objElement.getAttribute _ ' (strAttributeName:="href") 'Debug.Print strTempText 'If InStr(strTempText, "top10") Then ' objElement.Click ' Exit For 'End If i = i + 1 Next
For Each objTAG In objIE.Document.all Debug.Print objTAG.tagName & ":" & TypeName(objTAG) Tag = objTAG.tagName If Tag = "INPUT" Then objName = objTAG.name If objName = "fldSerialNo" Then objTAG.Value = Worksheets("account").Cells(8, 4) If objName = "fldSerialNo1" Then objTAG.Value = Worksheets("account").Cells(9, 4) If objName = "fldSerialNo2" Then objTAG.Value = Worksheets("account").Cells(10, 4) If objName = "Login" Then objTAG.Click Call ie_wait(objIE) Exit For End If
End If Next old_skip20070726: s = objIE.Document.body.innerhtml s = strmid(s, "セキュリティ・カード", "") s_key(0) = Worksheets("account").Cells(11, 4) s_key(1) = Worksheets("account").Cells(12, 4) s_key(2) = Worksheets("account").Cells(13, 4) s_key(3) = Worksheets("account").Cells(14, 4) s_key(4) = Worksheets("account").Cells(15, 4) s = strmid(s, "'<td><strong>'", "") s = strmid(s, "'<td><strong>'", "") s = strmid(s, "'<td><strong>'", "") For i = 0 To 2 s_pos = strmid(s, "<TD><STRONG>", "<") p(i) = Mid(s_key(CInt(Right(s_pos, 1))), Asc(Left(s_pos, 1)) - 64, 1) Next For Each objTAG In objIE.Document.all Debug.Print objTAG.tagName & ":" & TypeName(objTAG) Tag = objTAG.tagName If Tag = "INPUT" Then objName = objTAG.name 'If objName = "securitykeyboard" Then objTAG.Click If objName = "fldGridChg1" Then objTAG.Value = p(0) If objName = "fldGridChg2" Then objTAG.Value = p(1) If objName = "fldGridChg3" Then objTAG.Value = p(2) If objName = "Login" Then objTAG.Click Call ie_wait(objIE) Exit For End If End If Next 'Do Until objIE.LocationURL = "https://direct04.shinseibank.co.jp/FLEXCUBEAt/LiveConnect.dll" ' Sleep 500 'Loop ' objIE.Document.all.skip.Click ' Call ie_wait(objIE) Set objFRAME = objIE.Document.frames Set objIE1 = objFRAME("menubar") objIE1.Document.links(4).Click '口座情報 Call ie_wait(objIE) Set objFRAME = objIE.Document.frames Set objIE1 = objFRAME("menubar") Set objDOC = objFRAME("txnarea").Document s = objDOC.body.outertext 'objIE1.Document.links(6).Click '入出金明細 For i = 0 To objDOC.links.Length - 1 If objDOC.links(i).outertext = "円普通預金" Then objDOC.links(i + 1).Click Exit For End If Next Do Until InStr(s, "最近のお取引のご照会") > 0 Sleep (500) On Error Resume Next Set objDOC = objFRAME("txnarea").Document s = objDOC.body.outertext If Err <> 0 Then Err.Clear Exit Do End If Loop Call ie_wait(objIE) Set objDOC = objFRAME("txnarea").Document objDOC.all.submit.Click Sleep 500 Call ie_wait(objIE) timeout = 0 Set objDOC = objFRAME("txnarea").Document s = objDOC.body.outertext Do While InStr(s, "最近のお取引のご照会 (直近10明細の照会)") = 0 ' Sleep 100 timeout = timeout + 1 If timeout = 500 Then If MsgBox("ログインが成功しませんでした。もう50秒待ちますか?", vbOKCancel) = vbCancel Then Application.StatusBar = "ログイン画面が表示されませんでした" GoTo error_end Else timeout = 0 End If End If Set objDOC = objFRAME("txnarea").Document s = objDOC.body.outertext Loop s = objDOC.body.innerhtml 'fName = ActiveWorkbook.Path & "\" & "d:\auction2003\sinsei_login_go.txt" 'Open fName For Output As #1 'Print #1, s 'Close #1 s = Right(s, Len(s) - InStr(s, "<TD class=ColHeadingRightAlignedACI width=""20%"">残高</TD>") - Len("<TD class=ColHeadingRightAlignedACI width=""20%"">残高</TD>")) s = Right(s, Len(s) - InStr(s, "<TR>") - Len("<TR>")) s = Right(s, Len(s) - InStr(s, "<TD class=DataLeftAligned width=""15%"">") - Len("<TD class=DataLeftAligned width=""15%"">") + 1) 'ss = Left(s, InStr(s, vbCrLf))
kensuu = 0 's = objIE.Document.body.innerhtml 'If InStr(s, "<TD align=middle width=100 bgColor=") = 0 Then ' GoTo endd 'Else 'End If 'loop_f = 1 'While loop_f = 1 's = Replace(s, "*01*", "振込・振替") 'fName = "d:\auction2003\sinsei_syoukai.txt" 'Open fName For Output As #1 ' Print #1, s 'Close #1 While InStr(s, "振込・振替") > 0 hinichi = strmid(s, "<TD class=left width=""15%"">", "<") hinichi = Replace(hinichi, "/", "年", , 1) hinichi = Replace(hinichi, "/", "月", , 1) & "日" name = strmid(s, "<TD class=left width=""20%"">", "<") If Left(name, 5) = "振込・振替" Then name = strmid(s, "振込・振替:", "<") kingaku = strmid(s, "<TD class=right width=""13%"">", "<") kingaku = strmid(s, "<TD class=right width=""13%"">", "<") 's = Right(s, Len(s) - InStr(s, vbCrLf) - Len(vbCrLf) + 1) 'MsgBox Name & kingaku & hinichi If InStr(name, Worksheets("account").Cells(16, 4).Value) = 0 Then nyuukin(kensuu).kingaku = kingaku nyuukin(kensuu).hinichi = DateValue(hinichi) nyuukin(kensuu).namae = name kensuu = kensuu + 1 End If End If Wend
endd: If kensuu < 0 Then Application.StatusBar = "ログインでエラーが発生しました" Else If kensuu = 0 Then Application.StatusBar = "新規受入はありません" Else Dim nyuukin_old As nyuukin_row '最後の取り込みを探す i = 2 nyuukin_old.hinichi = "" nyuukin_old.kingaku = 0 nyuukin_old.namae = "" Do Until Cells(i, 5).Value = "" '入金一覧サーチ If Cells(i, 5).Value = "新生" Then nyuukin_old.hinichi = Worksheets("入金").Cells(i, 2).Value nyuukin_old.kingaku = Worksheets("入金").Cells(i, 3).Value nyuukin_old.namae = Worksheets("入金").Cells(i, 4).Value Exit Do End If i = i + 1 Loop kaisi = kensuu - 1 If nyuukin_old.kingaku > 0 Then For i = 0 To kensuu - 1 If nyuukin_old.hinichi = nyuukin(i).hinichi And nyuukin_old.kingaku = nyuukin(i).kingaku And nyuukin_old.namae = nyuukin(i).namae Then kaisi = i - 1 Exit For End If Next Else ' 初取り込み End If For i = kaisi To 0 Step -1 Rows("2:2").Select Selection.Insert Shift:=xlDown Selection.RowHeight = 13.5 Cells(2, 2).Value = nyuukin(i).hinichi Cells(2, 4).Value = nyuukin(i).namae Cells(2, 3).Value = nyuukin(i).kingaku Cells(2, 5).Value = "新生" Next 'Rows("2:2").Select
Application.StatusBar = "新生銀行より" & kaisi + 1 & "件の入金を取り込みました" End If End If