Excel解算器:基于平均值求解

时间:2011-01-11 18:12:30

标签: excel vba

我在 A1 中有一个参数会在随机且非常高的标准偏差中影响“ TOTAL ”。让我们说 A1 是2 ...然后 TOTAL 值可能是1 ... 5 ... 17 ... 3 ... 2 ... 2 ...等等如果 A1 为1则 TOTAL 值可能是1 .... 3 ... 5 ... 15 ... 9 ... 10..etc

我希望求解器在 X 运行后找出 A1 中哪个值等于 TOTAL 的最佳平均值。我可以在哪里定义 X

在我的示例中,您可以确定{strong> 6 运行后平均A1=1更好。但是,如果你正常运行求解器,它会说A1=2是最好的,因为它产生了17的值。

1 个答案:

答案 0 :(得分:0)

这似乎不是你用求解器解决的那种问题。为什么不写一个循环遍历A1,X次的值的宏,保持每个A1的TOTAL值的运行总和?当它全部结束时,最大的总和也是最大的平均值。

内部循环将是这样的:

Redim tSum(1 to maxA1)
for i = 1 to maxA1
    tSum(i) = 0
    for j = 1 to X
        [A1] = i
        Application.calculate
        tSum(i) = tSum(i) + TOTAL
    next j
next i
'now step through tSum. The index of the largest value 
' is the value of A1 desired. Put it in a handy cell.

它必须是一个宏,而不是一个函数,因为它会改变A1。