[英]VBA + Macros + For each cell condition error
我想就以下代码寻求帮助。
第一个“IF”条件运行良好,但我想跳过第一个条件的复制和粘贴功能并继续循环的“ELSE”条件不起作用,并给我一条错误消息,如下所示:
先感谢您! 给你们更多的力量!
Sub IF_Loop3()
Dim cell As Range
For Each cell In Range("TablePrac[Animals]")
If cell.Value <> "NULL" Then
cell.Offset(0, -3).Value = cell.Value
Else
If cell.Value = " " Then
Exit For
End If
Next cell
End Sub
For Each cell In Range("TablePrac[Animals]")
If cell.Value <> "NULL" Then
cell.Offset(0, -3).Value = cell.Value
Else If cell.Value = " " Then
Exit For
End If ' If cell.Value = " "
End If 'If cell.Value <> "NULL" <= you forgot this one!
Next cell
基于您的解释的新代码:
Sub IF_Loop3()
Dim cell As Range
For Each cell In Range("TablePrac[Animals]")
If (cell.Value <> "NULL") and (cell.Value <> " ") Then
cell.Offset(0, -3).Value = cell.Value
End If
Next cell
End Sub
您有两个条件来执行复制/粘贴: value <> "NULL"
和value <> " "
。 您只需要将这两个条件放在If
测试中就可以了。
如果您编写Exit For
则意味着循环将中断并且您的代码将在循环之后的第一行继续,而不是循环的下一次迭代。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.