如何解决VBA + 宏 + 对于每个单元格条件错误
我想就以下代码寻求帮助。
第一个“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
,则意味着循环将中断,您的代码将继续执行循环之后的第一行,而不是循环的下一次迭代。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。