Excel VBA 按 table 中的每一行进行 GoalSeek

Excel VBA GoalSeek by each row in a table

我希望在指定的 table 的每一行内执行目标搜索。以下 VBA 代码成功执行了 GoalSeek。

Sub GoalSeek()
 Dim lo As ListObject
 Dim rw
 Set lo = Sheet1.ListObjects("Table1")

 For rw = lo.DataBodyRange.Rows.Count To 1 Step -1
  Range("M" & rw).GoalSeek Goal:=Range("N" & rw).Value, ChangingCell:=Range("E" & rw)
 Next
End Sub

一路执行失败,产生运行次错误1004:范围class的GoalSeek方法失败

f

对如何解决有什么建议吗?我在下面附上了工作簿的副本。

Excel file copy

在您的循环中,您已到达第一行,但无法对该行进行 GoalSeek。所以改变这行代码

For rw = lo.DataBodyRange.Rows.Count To 1 Step -1  
to =>  
For rw = lo.DataBodyRange.Rows.Count To 2 Step -1