【发布时间】:2016-09-09 15:17:35
【问题描述】:
我是编程新手,目前正在努力学习 vba。我在尝试运行的每个循环都遇到问题,因为我太快退出循环。我有一个范围,我想测试它们是否存在某些值,如果存在,我想删除该列。但它只测试一次条件,然后退出循环。非常感谢您对此的任何帮助!
For Each cell In ActiveSheet.Range("S1:AA1")
If ActiveCell.Value = "Actual" Then
ActiveCell.EntireColumn.Delete
ElseIf ActiveCell.Value = "" Then
ActiveCell.EntireColumn.Delete
Else: ActiveCell.Offset(, 1).Select
End If
Exit For
Next
【问题讨论】:
-
用
cell代替ActiveCell,就不用Select了。 -
另外,您的
Exit For声明似乎很可疑,这将在第一个单元格上退出。