首页 > 解决方案 > 为什么我的用户函数返回 VALUE!错误并且不应用属性?

问题描述

我有以下代码:

Public Function myfunc()
    ActiveSheet.Range("A1").Interior.Color = vbGreen
    myfunc = ""
End Function

为什么当我在单元格 B1 中键入 =myfunc() 时,它会返回 #VALUE!错误并且不填充 A1 单元格?

在此处输入图像描述

另外,当我按下功能图标时,为什么它会使单元格 A1 变为绿色?

在此处输入图像描述

标签: vba

解决方案


单元格中的 UDF 只能将值返回到它所在的单元格。它不能影响对其他单元格的更改。你需要一个SUB不是函数。


推荐阅读