【发布时间】:2017-02-25 02:19:21
【问题描述】:
我正在尝试找到一种方法将一个 Excel 工作表用作函数。
我的文件中的工作表上有一个宏,我想在另一个工作表中插入宏的结果,以便在第一个工作表中进行多种输入组合。
正如这个非常古老的问题所建议的那样:Excel: using a worksheet as a function?,我正在尝试使用 Excel VBA,通过在我的工作表上做同样的事情,但我收到了一个“#VALUE”错误,这可能是什么?
这是代码
Function TEXTURE(sand, clay)
Sheets("Texture Calculator").Range("B4").Value = sand
Sheets("Texture Calculator").Range("D4").Value = clay
TEXTURE = Sheets("Texture Calculator").Range("G4").Value
End Function
我是 VBA 新手,我只是想通过旧帖子的试用找到解决方案
最好的,朱利奥
【问题讨论】:
-
在 VBA 中执行
?TEXTURE(0.7,0.1)效果很好...但是:像工作表函数 (UDF) 一样使用它会失败,因为 UDF 不能“做”某事。因此,更改单元格值或打开文件或其他任何内容都会导致函数出错。 -
您不能使用
function,因为用户定义的函数 (UDFs) 无法修改工作表。有没有办法将工作表转换成 VBA?