VBA计数器逻辑落后

时间:2018-11-15 21:05:38

标签: excel vba counter

我想知道VBA中计数器背后的逻辑是什么。

让我们在一个循环中说:

For x = 2 To lr
    If dbsheet.Cells(x, 4) = cat And dbsheet.Cells(x, 5) = lname Then
        counter = counter + dbsheet.Cells(x, 3)
    End If

counter = counter + dbsheet.Cells(x,3)对我来说像3 = 3 + 2。我知道它的作用(在我的情况下,它们总结符合特定条件的数字),但是我不理解其背后的逻辑。

有人可以解释这一点还是至少为我提供一些网络链接?

谢谢你,米哈

1 个答案:

答案 0 :(得分:0)

counter是一个变量。变量只是您所代表的东西。

要在VBA中为变量分配值时,它始终遵循相同的格式或语法。 要更改的变量将出现在运算符之前,而修改变量的信息将出现在运算符之后。

对于x = 2,要更改的变量为x,运算符为=,变量的目标值为2。您还不知道x是什么,直到您知道它将变成什么。

逻辑在扩展时适用。

counter = counter + dbsheet.Cells(x, 3)没什么不同。 在这里,我们在counter修改过的运算符=之前有counter + dbsheet.Cells(x, 3)

因此,您需要先了解counter + dbsheet.Cells(x, 3)是什么,然后才能评估counter最终将成为什么的结果。

写这本书来了解正在发生的事情的另一种方式是:

For x = 2 To lr
If dbsheet.Cells(x, 4) = cat And dbsheet.Cells(x, 5) = lname Then
    counter2 = counter
    counter = counter2 + dbsheet.Cells(x, 3)
End If

从本质上讲,它可以归结为自己添加一个数字。