我希望对我无法复制的错误有所了解。
我有一个非常复杂的工作表,它会更改许多变量以使某个单元格aa5
返回一个字符串。如果不满足任何条件,则返回0
。该单元格的公式是
=IF(SUM(AA2:AA4)=0,SubItem,0)
其中aa2:aa4
是返回字符串必须为0的条件,而subitem
是指定的单元格范围。
一旦它返回一个字符串,我就有一个模块将单元格aa5
粘贴到另一个工作表export
上。问题是,在我运行例程后(大约需要20分钟),我在export
表中找到了0个值。
我尝试手动将所有变量更改为创建错误的条件,但没有出现。我也尝试逐行浏览代码,似乎无法在那里复制它。
我的最后一根稻草是插入粘贴到export
表
If Worksheets("analysis").Range("aa5").Value = 0 Then
Exit Sub
跑步后我仍然有0值!
我不是一个真正的程序员,但我有VBA代码一定的经验,是有可能我'已经创建,其中0为if
被更新之前复制的竞争条件,但它仍然经过VBA检查?
答案 0 :(得分:3)
在VBA中使用之前尝试计算您的值:
With Worksheets("analysis").Range("aa5")
.Calculate
If .Value <> 0 Then
Worksheets("export").Range("A1").Value = .Value
End If
End With