我正在编写一个程序,它应该从给定的单元格地址获取所有依赖单元格,直接或间接影响同一张表中的其他单元格值。例如。
A1 = 10
A2 = A1+20
A3 = A2+30
如果我想要 A3 的依赖关系,它应该导致 A1 和 A2。
我已经使用了Range.Dependents
应该给出所有依赖单元格的方法,但它失败了。所以交替地我试图使用Range.DirectDependents
它只返回直接的单元格依赖并编写一个递归函数来为每个结果做同样的事情。例如。A3 列出 A2,然后 A2 再次递归返回 A1。
我的问题是
为什么 Range.dependents 无法正确列出所有嵌套的依赖单元格。
对每个单元格使用递归方法是个好主意吗?(我们不确定它们的深度)
这是我的示例代码
Dim Address As String
Try
For Each DataRange In ValidRange
cellAddress = DataRange.Address
Try
cellRange = DataRange.Dependents
Slno = Slno + 1
Address = cellRange.Address
Output = Output & "<tr><td>" & Slno & "<td>" & cellAddress & "</td><td>" & Address & "</td></tr>"
Catch ex As Exception
'Skip if no dependencies found
End Try
Next
Catch ex As Exception
Response.Write(ex.Message)
End Try