[英]Goal seek macro, changing cell reference not a hard value
我正在尝试为我的Excel模型制作目标搜索宏。 是否有可能创建一个宏,该ChangingCell
并不是一个硬性值但指的是硬值相等的公式。
Range("D1").GoalSeek Goal:=0.17, ChangingCell:=Range("D424")
因此,在这种情况下,单元格D424将等于其中具有硬值的另一个单元格。 为什么我设置的原因ChangingCell
直接D424是我们的目标寻求基于对文件的各种选项的变化细胞变化的参考。
您可以使用单元格D424上的DirectPrecedents方法为要更改的单元格创建一个范围对象。 假设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
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.