VBA:在用户定义的函数中创建单元格注释
Posted
技术标签:
【中文标题】VBA:在用户定义的函数中创建单元格注释【英文标题】:VBA: Creating cell comment within user defined function 【发布时间】:2018-10-18 08:59:35 【问题描述】:我有一个 UDF,它根据一堆输入变量进行计算。我试图让 UDF 创建一个包含有关这些变量的信息的单元格注释,但我只是得到 #VALUE!错误。
这就是我想要做的:
Function profit(income As Single, loss As Single) As Single
Dim cell As Range
cell = ActiveCell
profit = income - loss
call create_comment(cell, income, loss)
End function
调用子:
Private Sub create_comment(cell As Range, income As Single, loss As Single)
cell.ClearComments
cell.Addcomment "income =" & income & "loss =" & loss
End Sub
感谢所有帮助!
【问题讨论】:
查看 UDF 的 limitations。然后你可以看看It can be done。但如果你这样做,那么你可能是靠你自己的:-) 谢谢,我有。我不确定创建单元格注释是否计入格式。如果没有,应该是可以的。 评论没有格式,但您也不能使用 UDF 添加形状。 请注意,我正在尝试将注释添加到函数所在的同一单元格中。我不想更改另一个单元格的值。谢谢 我必须从上面更正我的评论。您确实不能使用 UDF 添加形状。我没想到。 【参考方案1】:我改变了你的功能
Function profit(income As Single, loss As Single, cell As Range) As Single
'Dim cell As Range
'cell = ActiveCell
profit = income - loss
Call create_comment(cell, income, loss)
End Function
然后你在这样的函数调用中输入活动单元格
=profit(1000,10,H10)
【讨论】:
这对你有用吗?我现在得到#NAME?错误 是的,这对我有用。也许您只是将代码添加到空表或按 F9 重新计算。我使用 Office/Excel 365。 谢谢!!你是英雄!! 很高兴我能帮上忙。我也学到了一些东西 ;-) 请将问题标记为已回答。 What should I do when someone answers my question?以上是关于VBA:在用户定义的函数中创建单元格注释的主要内容,如果未能解决你的问题,请参考以下文章
Excel VBA 用户定义函数:在工作表函数中获取单元格被调用
Excel VBA 用户定义函数,用于计算具有条件格式的单元格