我是VBA新手,我需要编写一个可以在公式中调用的函数的帮助,该函数应复制一个单元格的值(此单元格不应是预定义的固定单元格,而应该是我们必须能够选择它同时调用该函数),然后将其粘贴到调用该函数的单元格旁边的单元格中。
例子:
在上面的函数中,如果单元格B3和C3中的值相等,则单元格E3中的公式应调用函数“ Myfunction()”,此函数必须将单元格D3中的总和复制到单元格F3中,并且我们必须能够选择该单元格复制(myfunction(D3)D3可以变化,可能是E3或F3等)
我的代码:
Dim c As Range
Function myfunction(c)
myfunction = c.Select
Selection.Copy
Range("c" + 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Function
“ c”应该是可变的。
并将其粘贴到调用该函数的单元格旁边的单元格中。
这是不可能的,从工作表中的公式调用的VBA函数无法访问工作表中的任何其他单元格。
自定义函数除向工作表中的公式或另一个VBA宏或函数中使用的表达式返回值外,不允许执行任何其他操作。例如,自定义函数无法调整窗口大小;在单元格中编辑公式;或更改单元格中文本的字体,颜色或图案选项。如果在函数过程中包含此类“操作”代码,则该函数将返回#VALUE!错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句