我想要的是我可以在excel公式中检查所有类似以下代码的参数。如果将其放入循环中,代码可以无错误运行,但是它运行缓慢,而且我的数据集很小(大约1500条记录)。 我与此类似的是一个将“ formula.local”值放在预定义表上的代码(因此它会自动完成)。
最重要的是,我真的需要这段代码更快地运行...如果有一种方法可以像“ local.formula”那样使用它,或者甚至可以提高代码本身的运行速度,请告诉我。 如果不清楚,请告诉我,我会尽力解释。 谢谢。
If comp = "AC" Then
Cells(i, 77).Value = "AC"
GoTo nextrec
End If
If state = "idle" Then
If resp >= obj Then
'idle but already miss deadline
Cells(i, 77).Value = "idle miss"
Else
'idle but ok
Cells(i, 77).Value = "idle"
End If
Else
'ended
If resp >= obj Then
'ended miss deadline
Cells(i, 77).Value = "ended missed"
Else
'deadline ok
Cells(i, 77).Value = "ended ok"
End If
End If
答案 0 :(得分:0)
这可以使用单个excel公式完成,而无需VBA。以下公式可以完成代码的工作。
由于您没有提供示例数据的片段,因此我将假设comp, state, resp, obj
是来自同一行其他列的值。您可以将公式中的这些值替换为相应的单元格引用,然后向下拖动。
=IF(comp="AC",
"AC",
IF(state="idle",
IF(resp>=obj,"idle miss","idle"),
IF(resp>=obj,"ended miss","ended ok")
)
)
答案 1 :(得分:0)
@DavidN上,这正是我的需要...由于某种原因,我没有以正确的方式处理if语句,我在Google上搜索了一些示例,但我变得更加混乱。一贯正确的方法就是简单的方法。谢谢。