VBA-Excel代码中的Erf()在Excel 2003中不起作用

时间:2013-03-13 15:30:55

标签: excel-vba add-in vba excel

我需要在我的VBA Excel程序中计算错误函数Erf()。我已经实现了类似的东西:

aux_A = -Application.WorksheetFunction.Erf(p)

以前,在Excel 2007中,我安装了Analysis Toolpak Add-in,它运行良好,但在Excel 2003中它不起作用(并且也安装了加载项)。

有什么问题?

(请注意,我想在VBA代码中使用结果,而不是在Excel工作表中使用。)

谢谢!

3 个答案:

答案 0 :(得分:2)

在Excel 2007之前,Erf在Analysis Toolpack中,所以你必须直接调用函数(没有WorksheetFunction部分)

aux_A = -Erf(p)

使用Excel 2007开始,他们将许多函数移动到WorksheetFunction库中,这就是您现在必须使用WorksheetFunction.Erf(p)的原因。

在VBA编辑器中,按F2并搜索Erf。您将看到2007年之前和之后的版本中的库和类是不同的。

答案 1 :(得分:0)

Erf函数是否采用2个参数(上限,下限)?

答案 2 :(得分:0)

  1. 在加载项中添加“Analysis Toolpack - VBA”(工具 - >加载项)
  2. 在VBA项目编辑器中添加对 atpvbaen.xla 的引用(工具 - >参考)
  3. 尝试:

    n = Erf(0.5)

  4. 适合我。