excel vba での次の操作をどう書けばよいのか教えてください。
下記htmlでは「予想まとめ」が選ばれているが、「枠・馬番順」をselect状態にしたいです。
:
:
<ul class="localTab">
<li id="oddsPositionTab"><a href="#">枠・馬番順</a></li>
<li id="oddsRankTab"><a href="#">人気高配当順</a></li>
<li id="oddsViewerTab">
<a href="https://keiba.rakuten.co.jp/odds/compare/RACEID/ …オッズ比較ツール</a>
</li>
<li id="matomeTab"><span class="selected">予想まとめ</span></li>
</ul>
:
:
No.2ベストアンサー
- 回答日時:
No1です
>もっと良い書き方あればご教授お願いします。
ご提示の処理は、
>select状態にしたいです。
ではなく、「クリックする」処理です。
要素にidが振られているので、わざわざ探す必要もないでしょうし、2重ループの必要性はまったく理解できません。
htmlの更新等で文字が一文字でも変わると、無限ループに陥りそうです。
以下で、十分なのでは?
ie.document.querySelector("#oddsPositionTab a").Click
万一の(更新時などの)エラーにも配慮しておくなら、「要素の有無をチェックしてからクリック」の手順にしておけば宜しいかと。
素晴らしい。
この9行を、.Click行の1行に、そのまま書き直したら、うまく動作しました。
querySelectorについてもうすこし勉強します。。
大変助かりました。ありがとうございました。
>2重ループの必要性
nextのあとに、リトライやメッセージ出力を考えていましたが、このところは省略してましたすみません。
No.1
- 回答日時:
こんばんは
ご質問の意味がさっぱりわかりませんが・・・
>下記htmlでは「予想まとめ」が選ばれているが
それって「class="selected"」のことを指しているのでしょうか?
もしそうなら、それはあくまでもそのページのローカルルールであって、一般的に言う「選ばれている」状態とは関係はありませんね。
>「枠・馬番順」をselect状態にしたいです。
上記と同じように「class="selected"」を設定したいってことでしょうか?
あるいは、一般に言う、「テキストを選択状態」にしたいってことでしょうか?
そもそも、どのようにhtmlを」取得しているのかすら不明ですが、仮にDocumentが取得(=仮に、doc)できているとするなら、前者の場合で li 要素に設定するのなら
doc.querySelector('#oddsPositionTab').className = "selected"
といった要領でできるでしょう。
もしも、後者の場合は、一般的なブラウザ(IEは除く)であれば、以下のような要領で可能です。
https://developer.mozilla.org/en-US/docs/Web/API …
※ なさりたいことがよくわかりませんが、ご参考にでもなれば。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP アコーディオンPHPが上手くいかない 3 2022/07/15 16:29
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- HTML・CSS CSS のみのタブ切り替えについて 1 2023/01/11 16:47
- HTML・CSS cssの display: flex;で横並びにならずに困ってます 1 2022/12/04 13:18
- HTML・CSS FC2カートのテンプレートでの商品表示について 1 2023/03/02 18:05
- その他(プログラミング・Web制作) pythonのWebスクレイピングでfind_allだとurlがNoneに 4 2022/04/17 18:21
- HTML・CSS htmlについて質問です! 写真のように写真の部分が?になってしまいます。 ファイルもしっかり選べて 1 2023/07/09 21:17
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- HTML・CSS テキストを画面の真ん中に配置したいです。 2 2022/11/25 16:11
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
<table>の高さ固定。情報増加時...
-
リストマーカーをボックス内に...
-
cssで作成する多階層リスト
-
<ol><li> 左側にスペースがで...
-
CSSのみで画像とテキストに同時...
-
リストの左余白の削除方法
-
CSSのbackground-imageにリンク
-
liタグの中に<p>タグやら<dl>を...
-
display:table;を多段表示させたい
-
<ul>タグを使うと勝手に<p>...
-
アコーディオンメニューがかく...
-
疑似クラス :activeが効きません
-
HTMLで組織図を作成する方法
-
画像を形そのままで横に並べたい
-
CSSによるタブメニューの構築に...
-
liタグの左寄せ方法を教えてく...
-
リストの数字のフォントサイズ...
-
CSSでドロップダウンにしたいの...
-
3番目のBoxだけずれる
-
ドロップダウンメニューが隠れ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
リストマーカーをボックス内に...
-
番号付きリスト(<Ol><Li>・・...
-
liタグの中に<p>タグやら<dl>を...
-
レスポンシブWebデザインでリン...
-
<table>の高さ固定。情報増加時...
-
<ul><li></li></ul>にするメリ...
-
リストの数字のフォントサイズ...
-
HTMLで組織図を作成する方法
-
ulタグやliタグの中でbrタグ...
-
divタグ内のコンテンツが重なっ...
-
画像にリンクを張ると画像がず...
-
複数行にまたがる括弧を表示し...
-
ページを開いているときのリン...
-
html <ul></ul>の並びで一行空...
-
html/cssの、navを2段にする...
-
HTML5のfooterに見出しを付けて...
-
<ul>~</ul>が二つ続くと間に改...
-
htmlの<ol>タグで、数字などを...
-
リンク文字同士の間隔を開ける...
-
CSSでつくったメニューのアニメ...
おすすめ情報
良く理解しないでの質問ですみません。でも回答有難うございます。
いろいろ考えて以下のような、姑息な処理で乗り切ろうと思います。
もっと良い書き方あればご教授お願いします。
Do
For Each obj In ie.document.getElementsByTagName("a")
s = obj.outerHTML
If InStr(s, "枠・馬番順") > 0 Then
obj.Click
Exit Do
End If
Next
Loop
‥‥