VBAのIE操作で困っています。
未読分:2件
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。
Message#2 2014年12月8日(月)18時37分 From: VBAマスター | 返事 削除 変更 |
こんにちは。 Set s1 = objIE.Document.all("Si1") If s1 Is Nothing Then MsgBox "ないです" Exit Sub Else End If Set objTag = objIE.Document.all("Si1").all.tags("a") と、エラーの発生する手前で、Si1のオブジェクトを確認してください。 あ、表示した後のhtmlソースも、自分で確認してください。 現在の仕様では、NameにSi1は、ありませんでしたよ。 つまり、エラーの発生は、あくまでも、問い合わせしたwebページの仕様です |
Message#1 2014年12月8日(月)18時34分 From: B-COMP | 返事 削除 変更 |
エクセル(VBA)作成で行き詰ってます。対処方法を教えていただきたいです。 セルA1に入っている文字をヤフーで検索して、その虫眼鏡キーワードを取得したいのですが、虫眼鏡キーワードが無い場合、Set objTag = objIE.Document.all("Si1").all.tags("a")で「エラー424のオブジェクトが必要です」というメッセージがでます。虫眼鏡キーワードが無い場合に「虫眼鏡キーワードがありません」というメッセージで終わるにはどうすればよろしいでしょうか?※ 「On Error GoTo myError」などの強制回避的なものは無しでお願いします。 Sub 虫眼鏡() Dim objIE As Object 'IEオブジェクト参照用 Set objIE = CreateObject("InternetExplorer.application") 'IEのオブジェクトを作る Dim objTag As Object Dim n As Integer Dim keyword As String objIE.Visible = True '見えるようにする 'キーワード日本語対応 Set sc = CreateObject("ScriptControl") sc.Language = "Jscript" Set js = sc.CodeObject 'キーワード代入 keyword = js.encodeURIComponent(Range("A1")) 'キーワードで検索 objIE.Navigate "http://search.yahoo.co.jp/search?p=" & keyword '手抜きで2秒待つ(オブジェクトの展開時間を待つ) Application.Wait Time:=Now + TimeValue("00:00:03") Set objTag = objIE.Document.all("Si1").all.tags("a") For n = 0 To objTag.Length - 1 Cells(5 + n, 3) = objTag(n).innerText Next n 'IEを閉じる objIE.Quit Set objIE = Nothing End Sub |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降