前提・実現したいこと
クラス・インスタンスのメンバ(メソッドやプロパティ)を効率的・体系的に調べる方法を知りたい
発生している問題・エラーメッセージ
クラス・インスタンスのメンバ(メソッドやプロパティ)を調べるのに時間がかかる。 今回は、下記のコードのうちで htDoc.getElementsByTagName("INPUT")(collectionCnt).ParentNode.ParentNode.previousElementSibling.innertext の箇所の、"ParentNode"、"previousElementSibling" を見つけるのにGoogleでの検索などをおこない具体的な使用事例などを調べましたが、見つけるのに時間を要しました。 効率的・体系的に調べる方法はないでしょうか。 なお、下記のコードは、WEB上(IE)の表中の片側の列のチェックボックスのみにVBAでレ点をいれるものです。
該当のソースコード 言語:VBA (Excel)
Public Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) Option Explicit Sub WEB操作TEST() 'Internet Explorerの COM (Component Object Model) をインスタンス化 Dim ie As Object Set ie = CreateObject("InternetExplorer.Application") ie.Visible = True ie.navigate "https://yshida.web.fc2.com/" 'URLへ移動 'ウィンドウ切り替え待ち Sleep 2000 Dim htDoc As Object 'HTML文書の格納変数 Set htDoc = ie.document 'IEからHTML文書を取得する。 Dim htElement As Object 'HTML要素の格納変数 Dim collectionCnt As Long '要素のコレクション(≒配列)の添え字 Dim strParentPreviousElement As String '一つ手前の欄(※)の要素の文字列 ※自分→親要素→前要素 collectionCnt = 0 For Each htElement In htDoc.getElementsByTagName("INPUT") 'INPUTタグのコレクションのオブジェクトを参照し繰り返し処理 If htElement.Type = "checkbox" Then 'チェックボックス(checkbox)があるか判定 On Error Resume Next '一つ手前の欄(※)に"X"がない場合のエラー回避用 ※自分→親要素→前要素 strParentPreviousElement = htDoc.getElementsByTagName("INPUT")(collectionCnt).ParentNode.ParentNode.previousElementSibling.innertext '一つ手前の欄(※)の文字列を格納 ※自分→親要素→前要素 On Error GoTo 0 'エラー処理無効 If InStr(strParentPreviousElement, "X") = 1 Then '一つ手前の欄が"X"か判定 htElement.Click End If End If collectionCnt = collectionCnt + 1 strParentPreviousElement = vbNullString Next End Sub
試したこと
Google検索、VBEでのオブジェクトブラウザの確認、MSDN(確認したが見方がよくわかりませんでした)
補足情報(FW/ツールのバージョンなど)
Windows10 Home
64ビット オペレーティングシステム、x64ベース プロセッサ
Excel(Microsoft365)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/23 06:36
退会済みユーザー
2020/11/23 06:57
2020/11/23 11:49
退会済みユーザー
2020/11/23 13:19
2020/11/28 01:53