前提・実現したいこと
VBA初心者です。
自分の銀行口座やや証券会社口座にアクセスし,明細データを取り込むマクロを組みたいと考えています。
明細のTableタグのオブジェクトを取得しようとすると,
ーーーーーーーーーーーーーーーーーーーーーー
実行時エラー91
オブジェクト変数またはWithブロック変数が設定されていません。
ーーーーーーーーーーーーーーーーーーーーーー
というエラーメッセージが出ます。
ソニー銀行の明細データにアクセスする際に発生しています。
以下のブログなどを参考にしているのですが,原因が分からずにおります。
https://www.sejuku.net/blog/72067
https://tonari-it.com/vba-ie-get-table/
https://www.vba-ie.net/element/document-all.php#a3
https://www.tipsfound.com/vba/19091
発生している問題・エラーメッセージ
実行時エラー91
オブジェクト変数またはWithブロック変数が設定されていません。
該当のソースコード
Attribute VB_Name = "modSBW"
Option Explicit
Public Sub getSBW()
Dim objIE as InternetExplorer Set objIE = CreateObject("InternetExplorer.Application") objIE.Visible = True 'ログインページへ objIE.Navigate "https://o2o.moneykit.net/NBG100001G01.html?nc=181029001/" Call IEWait(objIE) Call WaitFor(3) 'ログイン Dim accountNum as Long Dim loginPW as String accountNum = ****** loginPW = "******" Dim htmlDoc As HTMLDocument Set htmlDoc = objIE.Document htmlDoc.getElementsByName("KozaNo")(0).Value = accountNum htmlDoc.getElementsByName("Password")(0).Value = loginPW objIE.navigate "JavaScript:mySubmitNBG100001G01(document.HOST, 1)" Call WaitFor(15) 'SBWのページへ objIE.navigate "javascript:hometop(101)" Call WaitFor(15) '明細照会のページへ objIE.navigate "javascript:sonybankwallet(1)" Call WaitFor(20) '1つ目のtableタグデータを抽出したい MsgBox htmlDoc.getElementsByTagName("table")(0).outerHTML (ここでエラーが出ます) 'objIE.Quit 'Set objIE = Nothing
End Sub
試したこと
ここで使用している変数のhtmlDocは定義しており,参考にしているサイトにも情報がないことから,何を修正すべきか分からずにおります。
補足情報(FW/ツールのバージョンなど)
Windows 10
Office 2019
回答1件
あなたの回答
tips
プレビュー