次の XML (Excel XML データシートの 2 つの行) が与えられた場合、すべてのCost値を検索し、関連するAltIDを検索したいと考えています。
...
<Row ss:AutoFitHeight="0">
<Cell ss:StyleID="s62"><Data ss:Type="String" AltID="1" ColumnHeader="AltName">Alternative 2</Data></Cell>
<Cell ss:StyleID="s62"><Data ss:Type="Number" ColumnHeader="Total">0.105468638</Data></Cell>
<Cell ss:StyleID="s64"><Data ss:Type="Number" ColumnHeader="Cost">123</Data></Cell>
<Cell ss:StyleID="s64"><Data ss:Type="Number" ColumnHeader="Risk">456</Data></Cell>
</Row>
<Row ss:AutoFitHeight="0">
<Cell ss:StyleID="s62"><Data ss:Type="String" AltID="2" ColumnHeader="AltName">Alternative 3</Data></Cell>
<Cell ss:StyleID="s62"><Data ss:Type="Number" ColumnHeader="Total">1.7803949999999999</Data></Cell>
<Cell ss:StyleID="s64"><Data ss:Type="Number" ColumnHeader="Cost">123</Data></Cell>
<Cell ss:StyleID="s64"><Data ss:Type="Number" ColumnHeader="Risk">456</Data></Cell>
</Row>
...
Costs は簡単に見つけることができますが、この与えられたコストを使用して、Rowまでレベルを「上げ」、ColumnHeader がAltNameと等しいセルを見つけて、 AltID属性を指定する方法を見つける必要があります。
Dim costs = From item In dg...<Table>...<Row>...<Cell>...<Data> Select item Where item.@ColumnHeader = "Cost"
For Each i In costs
dim CostValue as Integer = i.value
dim AltID as Integer = ...
Next