我有一份Excel报告,由于任何给定月份的日历天数不均匀,每天生成的日期不同,从三天到两天不等。列F中的报告如下所示。今天的日期是2013年7月17日,生成报告的过程配置为显示超过180天的任何内容,以便我们捕获正确的数据。
01/12/2014 01/15/2014 01/15/2014 01/12/2014 01/15/2014
我想删除所有不等于1/15/14的行。我不知道是否有办法只用1/15添加另一列,然后删除其余的?任何帮助或方向将不胜感激。
我们现在每天都进入文件并按日期排序然后删除。我想自动化它。
谢谢
答案 0 :(得分:1)
使用循环迭代行,如果小于您的条件则删除。我引用了这个线程的行删除代码:Delete a row in Excel VBA。
我假设你的日期在A栏,从第1行开始。
Private Sub Remove_Rows()
Dim CutoffDate As Date
CutoffDate = Date + 180
Dim ws As Worksheet
Set ws = ActiveSheet
Dim RowCounter As Integer
RowCounter = 1
Do While ws.Cells(RowCounter, 1) <> ""
If ws.Cells(RowCounter, 1) < CutoffDate Then
ws.Rows(RowCounter).Delete
End If
RowCounter = RowCounter + 1
Loop
End Sub