【发布时间】:2015-08-07 19:04:34
【问题描述】:
我已经尝试修复这个错误几个小时了,但我似乎看不出我在这里做错了什么。
我的宏如下:
Function testValueChange(cell As Range)
On Error GoTo ErrorHandler
Dim testValue As String
testValue = Range(cell.Address)
MsgBox testValue
Range("Q2") = "new value"
Exit Function
ErrorHandler:
MsgBox "Error #" & Err & " : " & Error(Err)
End Function
我能够正确检索“testValue”并显示在 MsgBox 上。但是,当我尝试为单元格“Q2”设置新值时,我收到错误“错误 #1004:应用程序定义或对象定义错误。”
网络上有几个关于该错误的条目,但在这种情况下,当我试图简单地将字符串值设置为空单元格时,它们都没有!
单元格“Q2”是空的,我特意选择了那个单元格,因为它没有被合并,也没有被其他函数或任何东西引用。
提前感谢所有帮助!
【问题讨论】:
-
你是从 Excel 单元格还是 VBA/IDE 环境调用这个函数?
-
如果您从 Excel 单元格调用您的函数,请参阅 this...
-
定义 Range("Q2") 属于哪个工作表?例如:ws.Range("Q2") = "新值"
-
你能贴出你用来调用函数的代码吗?这可能会对这个问题有所启发。你的代码对我来说很好。
-
@HeadofCatering:我已经删除了答案。让我们等待 OP 关于如何调用该函数的回复。感谢您纠正我。