【问题标题】:"This function takes no arguments" error when calling UDF调用 UDF 时出现“此函数不带参数”错误
【发布时间】:2018-09-24 09:41:57
【问题描述】:

我正在为 Excel 工作表编写用户定义的函数,但无法调用它。每次我尝试插入它时,“函数参数”窗口都会显示“此函数不接受任何参数”。事实上,它确实需要参数。

我可以在公式栏中修改它以传递参数,但它仍然只在单元格中显示公式。

该功能在我第一次创建时有效,但在保存并在 4 天后返回后它不再有效。我还尝试创建一个简单的测试函数(如下),但发生了同样的错误,所以我怀疑这不是代码的问题,而是 Excel 本身的问题。

Public Function ReturnRefContents(SourceString As String)

    ReturnRefContents = SourceString

End Function

同时使用函数的完整路径 (=products.xlsm!Module1.ReturnRefContents("Blah")) 和简写版本 (=ReturnRefContents("Blah")) 时会出现问题

有人对为什么会发生这种情况以及如何解决它有任何想法吗?

【问题讨论】:

  • 您是否使用 CTRL + `(重音)切换到 formula view。?
  • 也许函数声明应该定义返回类型?即Public Function ReturnRefContents(SourceString As String) As String

标签: excel vba user-defined-functions


【解决方案1】:

这是信任中心设置 - 我在没有通知的情况下禁用了所有宏。

修复: 文件 > 选项 > 信任中心 > 信任中心设置 确保宏设置设置为“禁用所有带有通知的宏”。然后,当您打开文档时,您将获得启用内容的选项。

您也可以转到文件 > 信息 > 安全警告并单击“启用所有内容”以使电子表格成为受信任的文档

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多