gpt4 book ai didi

vb.net - Excel VBA 递归获取依赖单元格

转载 作者:行者123 更新时间:2023-12-02 13:51:49 24 4
gpt4 key购买 nike

我正在编写一个程序,该程序应该从给定单元格地址获取所有依赖单元格,直接或间接影响同一工作表中的其他单元格值。例如。

A1 = 10
A2 = A1+20
A3 = A2+30

如果我想要 A3 的依赖关系,它应该产生 A1 和 A2。

我已经使用了 Range.Dependents 方法,该方法应该给出所有依赖单元格,但它失败了。因此,我尝试使用 Range.DirectDependents 仅返回直接单元格依赖项,并编写一个递归函数对每个结果执行相同的操作。对于前。 A3 列出 A2,A2 再次递归返回 A1。

我的问题是

  1. 为什么 Range.dependents 无法正确列出所有嵌套的依赖单元格。

  2. 对每个单元格使用递归方法是个好主意吗? (我们不确定它们有多深)

这是我的示例代码

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

最佳答案

快速尝试了一下,发现了以下内容

?Range("A1").Dependents.Address
$A$2:$A$3

?Range("A2").Dependents.Address
$A$3

?Range("A3").Dependents.Address
Run-time error

显然,您正在寻找的是Range.Precedents

?Range("A3").Precedents.Address
$A$1:$A$2

关于vb.net - Excel VBA 递归获取依赖单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18884873/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com