如果它满足两个要求,我试图通过VBA删除Excel 2007中的行:提供的终止日期大于一个(变量datesToRemoveTerminatedMembersFrom)以及列R中是否有“D”。
我正在使用的代码没有给我一个错误,但也没有删除该行:
For i = lastRow To 2 Step -1
If Range("R" & i).Value = "D" Then
If Range("D" & i).Value > datesToRemoveTerminatedMembersFrom Then
Rows(i).Delete
End If
End If
Next i
他们都是自己工作,但如果我把它们筑巢就不行。
感谢您的提前帮助
答案 0 :(得分:1)
尝试以下代码
For i = lastRow To 2 Step -1
If UCase(Range("R" & i).Value) = "D" Then
If CDate(Range("D" & i).Value) > CDate(datesToRemoveTerminatedMembersFrom) Then
Rows(i).Delete
End If
End If
Next
答案 1 :(得分:0)
我实际上不再需要这个了。我正在设置电子表格应用程序的人,要求我删除终止日期大于提交日期的每条记录。
实际上意味着什么用“”替换终止日期,而不是删除行,doh。
感谢您的帮助,我最终使用的代码是:
For i = lastRow To 2 Step -1
If CDate(Range("D" & i).Value) > CDate(datesToRemoveTerminatedMembersFrom) Then
Range("D" & i) = ""
End If
Next i