单元格值根据公式自动运行goalseek

每当单元格“E9”的值改变时,我需要运行一次goalseek,单元格E9 = Rand(),有没有办法做到这一点? goalseek和单元格E9位于不同的页面上。 我在网上find的VBA脚本如下,它不工作。 一旦我打F9,我的Excel只是不断迭代,给我“#NUM!” 我在这里错过了什么? 我的goalseek与单元格E9有关。 单元70是E9的一个function。

在Sheet1中,我有:

Private Sub Worksheet_Calculate() Dim KeyCell As Range Set KeyCell = Range("E9") If Not Application.Intersect(KeyCell, Range("E9")) _ Is Nothing Then Backsolve End If End Sub 

在Module1中我有:

 Sub Backsolve() Sheets("Backsolve").Select Range("C70").Select Range("C70").GoalSeek Goal:=0, ChangingCell:=Range("C71") Sheets("Sheet1").Select End Sub 

请帮助!

可能会这样工作:

在Sheet1中:

 Private Sub Worksheet_Calculate() Backsolve End Sub 

在Module1中

 Sub Backsolve() Sheets("Backsolve").Range("C70").GoalSeek Goal:=0, ChangingCell:=Range("C71") End Sub