目标寻求macros观,改变单元格引用不是硬性的价值

我正在努力为我的excel模型寻找一个macros的目标。 有没有可能创build一个macros,这个ChangingCell不是一个硬性的值,而是一个指向一个硬值的平等的公式。

 Range("D1").GoalSeek Goal:=0.17, ChangingCell:=Range("D424") 

所以在这种情况下,单元格D424会变成另一个有难度的单元格。 我可以直接将ChangingCell设置为D424的原因是,根据文件上的各种select,更改单元格的目标查找引用发生更改。

您可以通过在单元格D424上使用DirectPrecedents方法创build将更改的单元格的范围对象。 这是假设D424只涉及一个单元格。

 Sub MyGoalSeek() Dim precedentRange As Range Set precedentRange = Range("D424").DirectPrecedents Range("D1").GoalSeek Goal:=0.17, ChangingCell:=precedentRange End Sub 
 Public Function GoalSeek(Goal As Double, ChangingCell As Range) As Double Dim changingCellVal As Double 'Ensure the user only passes in a single cell, not a range of cells if(ChangingCell.Rows.Count = 1 And ChangingCell.Columns.Count = 1) Then changingCellVal = ChangingCell.Value end if 'Calculate GoalSeek GoalSeek = 0 End Function