我要将数据从报表中提取到excel中,并希望删除包含标题/空格/其他字符的行。我无法向您显示数据,因此您必须相信,检查设置列中的有效日期是确定是否删除该行的最佳方法。
我的问题是,当所选单元格包含有效的日期格式时,DateValue()似乎返回true,但是当我使用它来验证不包含日期的单元格时,它会引发类型错误(我想'假”)。
有没有更好的功能可以使用,或者如果没有,最好的方法是什么?
Public TotalRowCount As Integer
Sub RemoveUnwantedRows()
Call FindTotalRowCount
Dim i As Integer
i = 1
Do While (i <= TotalRowCount)
If DateValue(Cells(i, 13).Value) Then
Rows(i).Delete Shift:=xlUp
TotalRowCount = TotalRowCount - 1
Else: i = i + 1
End If
Loop
End Sub
答案 0 :(得分:0)
这将删除在第13列中不包含日期的所有行:
Sub RowKiller()
Dim i As Long, TotalRowCount As Long
TotalRowCount = Cells(Rows.Count, 13).End(xlUp).Row
For i = TotalRowCount To 1 Step -1
If Not IsDate(Cells(i, 13)) Then Cells(i, 13).EntireRow.Delete
Next i
End Sub