您好我刚刚开始学习vba并有一个问题
每当我在我的VBA代码中使用For Next循环函数时,我总是需要创建一个变量“Cell”或者不是吗?
答案 0 :(得分:1)
当您使用FOR ... NEXT语句时,您需要有一个要计数的变量,以及开始和结束。但是,您不需要使用Cell作为计数器。
在Visual Basic中,按F1并在搜索框中键入“for”。这将足以让你开始!
答案 1 :(得分:0)
不,你不必为它创建变量,非常欢迎你直接调用单元格。下面,我们假设您正在检查A1:A10以查看单元格是否包含字符串“Foo”:
For i = 1 To 10
If Cells(i, 1).Value = "Foo" Then
'Do something
End If
Next
如果你为它做了一个变量,它的外观如下:
For i = 1 To 10
cellValue = Cells(i, 1).Value
If cellValue = "Foo" Then
'Do something
End If
Next
现在,通常你不需要创建一个变量来存储值,特别是如果你只使用它一次或两次,因为存储变量的行为否定了你只需引用单元格所带来的任何速度提升直。另外正如您在上面所看到的那样,调用单元格直接有明显的好处,例如在循环时(您可以使用“Range(”A“& i)”或“cells(i,1)”但后者更快)并且更适合循环,特别是因为它不包含任何连接)。
重点
话虽如此,如果您要在循环中多次引用该单元格的内容,那么将它存储在像“单元格”这样的变量中更有效,并且可以更好地处理它而不是调用Excel每次的价值。我的一般规则是,如果我将单元格的内容引用超过2次,我会将其存储在变量中。
将值存储在变量中的另一个好处是能够更容易地设置断点并找出出错的地方。