• 締切済み

hiddenとなっているのは、VBAではキャッチで

VBAのie操作で ソースが <input type="hidden" name="name" value="name"> のようにhiddenとなっているのは、VBAではキャッチできないのでしょうか? For Each myObj In objIE.document.all.tags("input") If myObj.Name = "name" Then End If Next が出来ないのは、hiddenだからでしょうか?

みんなの回答

  • mike321
  • ベストアンサー率44% (4/9)
回答No.1

hiddenでも取得できます。 試しに下記のサイトでhiddenの項目を取得できるかどうかやってみました。 http://pointshop.jp/index.aspx Option Explicit Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) '============================================================= ' スクレイピング用共通モジュール '============================================================= Sub ieOpen(objIE As InternetExplorer, strURL As String) '新しいIEオブジェクトを作成してセット Set objIE = CreateObject("Internetexplorer.Application") 'IEを表示 objIE.Visible = True 'IEでURLを開く objIE.navigate strURL '読み込み待ち Call ieReady(objIE) End Sub Sub ieReady(objIE As InternetExplorer) '読み込み待ち Do While objIE.Busy = True Or objIE.readyState < READYSTATE_COMPLETE Sleep 10 DoEvents Loop End Sub '============================================================= ' ここから実行 '============================================================= Sub getInputTagName() Dim txtURL As String Dim i As Long Dim myObj As Object Dim objIE As InternetExplorer 'IEオブジェクト 'サイトのURL txtURL = "http://pointshop.jp/index.aspx" 'IEでページを開く Call ieOpen(objIE, txtURL) i = 1 For Each myObj In objIE.document.all.tags("input") Cells(i, 1) = myObj.Name If myObj.Name = "__VIEWSTATEGENERATOR" Then Cells(i, 2) = myObj.Value End If i = i + 1 Next End Sub

関連するQ&A