我正在尝试为excel 2010编写我的第一个vba宏。它需要对200,000行进行一些长计算,并且需要填充活动行上的2个相邻单元格。以下VBA功能是完成上述操作的原始第一次尝试。问题是在执行宏时,我得到#value!错误。如果我删除" cell"和.Value行,它工作正常,并以适当的值填充activecell。我做错了什么?
非常感谢你的帮助。
Public Function someCalculation() As Integer
Dim r As Range
Dim nrow, ncol As Integer
nrow = ActiveCell.Row
ncol = ActiveCell.Column
r = Cells(nrow, ncol + 1)
r.Value = nrow * 100 + ncol
someCalculation = nrow * 1000 + ncol
End Function
答案 0 :(得分:0)
“Cells”是一个对象,你必须使用'Set'和任何对象来分配它。
但是修改另一个细胞是不可能的,而不是具有功能的细胞。
编辑:删除错误代码
Set r = Cells(nrow, ncol + 1)