2

このフォーラム全体、msdn、および専門的なチュートリアルを検索してきましたが、VBA の答えが見つかりません:getElementById検索する ID が動的であるアクセス VBA モジュールで作業を行うにはどうすればよいですか?

HTML コードを見てみましょう。

<DIV id=rowToolTipContainer>
<DIV class=contactsCard id=resultsTooltip1122286Contents style="DISPLAY: none">
<TABLE class="shadow-box tooltip">
<TBODY>

そして、私がそれを見つけようとしている方法:

Dim ResultDIV As HTMLDivElement   
Set ResultDIV = HTMLDoc.getElementById("resultsTooltip*")

返された html の id は結果ごとに異なります (数値は変化します) ので、各 DIV の id は常に次のようになります。

id=resultsTooltipxxxxxxxContentsxxxxxxx常に異なる数値です

どんな助けでも大歓迎です。

4

2 に答える 2

4

このようなものを試してください:

Dim ContainerDiv As HTMLDivElement, ResultDIV As HTMLDivElement

Set ContainerDiv = HTMLDoc.getElementById("rowToolTipContainer")
For Each ResultDIV In ContainerDiv.GetElementsByTagName("div")
    If ResultDIV.ID Like "resultsTooltip*Contents" Then

        '' What do you want to do here?

        Exit For
    End If
Next
于 2012-06-15T14:07:52.063 に答える
0
  1. 常に ID を含む最も近い親タグを特定します (HTML を見て手動で)。
  2. <div>そのタグのすべての子孫を列挙し、それらのIDプロパティをでテストしますLike
于 2012-06-15T10:32:17.990 に答える