Excel 执行rng.value=“”时UDF返回零

Excel 执行rng.value=“”时UDF返回零,excel,user-defined-functions,vba,Excel,User Defined Functions,Vba,Vba excel 2013在执行rng.value时返回零= Function Delete_UDF(rng) ThisWorkbook.Application.Volatile rng.Value = "" End Function 这是返回零,有人知道为什么吗?您的函数不返回任何内容。您需要添加以下内容: Delete_UDF = "return value" 您对Application.Volatile的使用告诉我您正在工作表上使用此自定义项,而这在工作表中永远不会起

Vba excel 2013在执行rng.value时返回零=

Function Delete_UDF(rng)
    ThisWorkbook.Application.Volatile
    rng.Value = ""
End Function

这是返回零,有人知道为什么吗?

您的函数不返回任何内容。您需要添加以下内容:

Delete_UDF = "return value"

您对Application.Volatile的使用告诉我您正在工作表上使用此自定义项,而这在工作表中永远不会起作用

从工作表中调用的自定义项不能更改该工作表或其他工作表中的任何单元格,只能将值返回到正在使用它的单元格。如果您在A1 like=Delete_UDFA1中使用此选项,它将是一个循环引用,因此不起作用

这永远不会作为工作表上的自定义项工作。

这看起来更像是一个子项,而不是一个函数。但不管是什么,如果你不能正确理解,你需要学习VBA的最基本的基础知识。请参阅