📜  如何在 Excel VBA 中使用 For Next 循环?

📅  最后修改于: 2022-05-13 01:57:34.962000             🧑  作者: Mango

如何在 Excel VBA 中使用 For Next 循环?

如果您熟悉编程,您必须知道循环是什么,在计算机编程中,循环是重复的语句序列,直到满足特定条件。

在 Excel VBA 中,“For Next”循环用于遍历一段代码特定次数。

句法:

For counter = start to end [step count]

statement 1
statement 2
statement 3
.
.
statement n
Next [counter]

在这里,我们可以使用计数器或任何其他变量来根据需要多次运行它们。

例子:

当您显示从 1 到 10 的数字时,您可能希望将变量的值设置为 1 并显示 10 次,在每次循环迭代时将其值增加 1。在 VBA 中使用相同的逻辑。

我们指定我们必须运行循环多少次,然后指定每次循环运行时我们的循环应该执行什么代码。

一个循环有 3 个部分,第一个是初始化,第二个是循环运行的条件,最后一个是递增或递减。

for循环中的控制流程:

  • 首先执行 For 步骤。此步骤允许您初始化任何循环控制变量并增加计步器变量。
  • 然后第二步是评估条件。如果为真,则执行循环体。如果为假,则不执行循环体,控制流跳转到下一条语句,就在 For 循环之后。
  • For 循环体执行完毕后,控制流程跳转到下一条语句。此语句允许您更新任何循环控制变量。 .该值更新为我们在计数中写入的值。
  • 再次评估条件,它会一直持续到条件变为假为止。

流程图

现在让我们看一个例子来理解 for 循环是如何工作的。请按照以下步骤使用本文:

第 1 步:Alt + F11打开 VBA(我们可以在其中编写代码的 Visual Basic 编辑器)。

第 2 步:右键单击工作簿名称,然后插入一个模块。

注意: Excel 的界面可能会根据您的版本而有所不同。

第 3 步:插入模块后,我们可以编写代码。假设我们正在编写打印前 10 个数字的总和的代码,所以我们的代码如下:

Sub Sumnumbers()
Dim Total as Integer
Dim Count as Integer  
Total = 0                   //initialised total as 0
For count = 1 to 10 // 
Total = Total + count //
Next count //increments counter N = N + 1
MsgBox Total //prints total sum 
End Sub   // code ended

那么,上面的代码中发生了什么:

  • 在第一行中,我们编写了代码主题,这主要是我们的代码开始的地方 sub 也很重要,因为它将大段代码分成小部分。
  • 正如我们在正常编程中用来声明的那样,我们声明了两个整数,第一个是总和,我们将在其中存储总和,另一个是计数,以计算循环中的 n 个变量
  • “for next”循环从 count =1 开始,一直运行到 count 等于 10。
  • 然后我们将通过将计数添加到总数来评估总计数:
Total = Tolal + count
  • 然后我们将计数器加 1 并重复上述操作,直到计数为 10。
  • 在循环结束时,我们将使用消息框显示输出。
  • 最后,我们将结束这个话题。

输出:

55

示例 2:打印奇数 +ve 整数到 10 的乘积

Sub ProductNumber()
Dim Product as Integer
Dim Total as Integer
Product = 1
For Count 1 to 10 Step 2   // when we use step 2 it tells compiler to increment
                           // count  by +2 such as 1,3,5,7,..
Product = Product * count
Next Count
Msgbox Product
End Sub

输出:

12150