簡體   English   中英

目標搜尋宏,更改單元格引用不是硬值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM