VBAを利用してWebブラウザ(IE)を操作するシステムを作成中です。
aタグをクリックする際の処理がうまく動作致しません。
色々サイトを調べていると以下のようなコードで実装できると記載がありました。
しかし、私がクリックしたいaタグには文字が記載されていません。
その場合はIf分の条件はどのように設定したらリンクを正しく押下することができるのでしょうか?ForEach以外での実装方法もありましたら教えていただきたいです。
VBA
1For Each objTag In objIE.document.getElementsByTagName("a") 2 ‘該当箇所 3 If InStr(objTag.outerHTML, "aタブに書かれた文字列“) > 0 Then 4 objTag.Click 5 Exit For 6 End If 7Next
html
1<tr="*" id="**" class="***"> 2 <td style="****" > 3 <input type="hidden" value="*****"> 4 <a href="******" onclick="*******"> 5 <span class="*******"> 6 </a> 7 </td> 8・・・・・・・・ 9 10</tr>
> VBAを利用してWebブラウザ(IE)を操作するシステムを作成中です。
ブラウザにIEを使用される理由は何でしょうか?
IEは非推奨なので回答つきにくいかと思いますが。
また、「うまく動作致しません。」とはどういうことでしょうか?具体的に説明なさった方が回答者に伝わるかと思います。
対象ページには複数のaタグがあり、そのなかの一つ(あるいはいくつか)のaタグが目的のものであるということでしょうか。
目的のものかどうかは、人間の目からみて、どのように判断できますか。判断できる方法があるなら、それをプログラムに翻訳すればいいです。どのように判断できるか、提示してください。
例えば、子要素のクラス名で判断するとか、親要素のID名、クラス名から判断するとか。
ID="**"のTrタグ内、一番最初のaタグでいいのだろうか?
それならインデックスでの指定もできますが