我正在构建UDF,并且整个上午都收到此错误,而且我不确定如何解决它。
我正在尝试使用excel程序为伙计们构建一个函数,当他们添加一个注释时,由于注释总是成对出现,也会将注释添加到另一个位置,两个注释都具有相同的确切注释。我目前有:
Public Function AddComments(vesselCell As Variant, shopCell As Variant, comment As String) As Variant
Range(vesselCell).AddComment (comment)
Worksheets("Shop").Range(shopCell).Value = comment
End Function
我已经将它挑出了引起问题的第三行代码。
当前设置为“容器单元”,将注释添加到工作表中,然后“商店”工作表中有一个用于注释的栏目。
答案 0 :(得分:0)
假设vesselCell
和shopCell
都是Range
对象,Range(vesselCell)
和Worksheets("Shop").Range(shopCell)
就是问题的一部分。
将它们设为Range
,而不是Variant
。
vesselCell.AddComment comment
shopCell.Value = comment
现在,此代码在UDF中不合法。将您的过程设为Sub
过程(删除As Variant
返回类型),然后从其他VBA代码中调用它,或将其附加到形状或按钮的OnAction
属性上。
用户定义的函数接受输入,计算结果,然后将其返回给调用单元:您的代码未返回任何内容,强烈表明Function
不是在这里合适。