VBA目标查找将单元格设置为0而不更改参数

我在这里把头发撕掉

当我在工作表中运行目标search时,它很好。 当我尝试运行完全相同的目标从vba寻找(手logging或编码)的单元格,我应该是寻求目标显示为0,variables不会改变。 F9什么都不做。 如果我编辑goalseek单元格,强制它重新计算,它会再次显示原始输出 – 因为没有任何变化。

有人遇到过这种情况么?

Range("G14").GoalSeek Goal:=0, ChangingCell:=Range("F14") 

G14是一个用户定义的公式,有两个范围参数和一对单元参数。

F14是范围参数中的一个单元格,在计算中肯定是一个驱动程序。

尝试运行它

 DoEvents ActiveSheet.Range("G14").GoalSeek Goal:=0, ChangingCell:=ActiveSheet.Range("F14") 

不知道它是否与您现有的代码有实质性的不同,但可能会正确地通过。

也可以在录制macros时手动运行电子表格中的goalseek,并在发生奇怪的事情时查看自动生成的macros代码。