我在需要引用父单元格时遇到问题。假设A1的公式为“ = B1”,而B1的公式为“ = C1”。我需要将A1的公式压缩为“ = C1”。我不确定在excel中是否有办法做到这一点,或者是否有办法做到这一点Apache POI。我环顾四周,但似乎无法真正找到解决方案。有谁知道如何在excel或POI api中做到这一点?
最佳答案
在您的示例运行中,这将为您提供所需的结果。
Sub GetLastPrecedent()
Dim pres As Range
Dim TestCell As Range
Set TestCell = Range("A1")
'Set pres to all cells that are used in getting the value of TestCell
'This includes all precedents of precedents
Set pres = TestCell.Precedents
'This will return the absolute precedent of the ones returned
Set pres = pres.Cells(pres.Rows.Count, pres.Columns.Count)
'This will set the formula in TestCell to use the absolute address
TestCell.Formula = "=" & pres.Address
End Sub
我希望这至少可以帮助您找到所需的内容。更多信息将带来更好的答案。请记住,如果您有引用许多单元格的复杂公式,这将变得非常危险和复杂。我仅根据提供的信息来提供此样本,以帮助您进行指导。