【发布时间】:2023-03-18 09:03:01
【问题描述】:
我正在尝试将名称列表从一个工作表复制并粘贴到另一个工作表中的特定单元格,这取决于“列表”工作表中的第 # 行是偶数还是奇数。
但是,FOR 循环只运行两个循环:即。第 # 行中的名称的 ONE 循环和第 # 行中的名称的 ONE 循环。
谁能告诉我我的错误在哪里?
我去掉了 IF 功能,一切正常。但我需要 IF 函数来确定奇/偶行号。
我目前的代码如下:
Sub Update_Print()
Dim i As Integer
For i = 7 To 1000
Sheets("List").Select
If i Mod 2 > 0 Then
Cells(i, 1).Select
Selection.Copy
Sheets("Receipts").Select
Cells(i + 30, 4).Select
ActiveSheet.Paste
Else
Cells(i, 1).Select
Selection.Copy
Sheets("Receipts").Select
Cells(i + 30, 10).Select
ActiveSheet.Paste
ActiveSheet.Print
Exit For
End If
Next i
End Sub
【问题讨论】:
-
因为你在
Else里面有Exit For,所以一旦你第二次运行循环,i = 8,所以i Mod 2 = 0,所以你进入Else部分,最后你到达你的Exit For并退出For循环。 -
啊,是的,我现在明白了。非常感谢!
标签: vba excel for-loop if-statement