我有大量信息,并且以开始日期列和结束日期列的形式输入了一些信息。我想做的是,如果您超出所选日期范围,则删除单元格的内容,每个单元格右侧 3 个,左侧 -4 个。因此 -4 位于开始日期左侧,3 位于结束日期右侧。
我已开始,但如果您的单元格不在我的日期范围内,则在删除时遇到问题
Private Sub cmdFilter_Click()
' Function to filter dates between text boxes, deletes all not in the range
Dim stStart As String, stEnd As String
Dim dbStart As Double, dbEnd As Double
Application.ScreenUpdating = 0
'Turn off screen updating until process done so it doesnt flicker
stStart = txtStart.Value
stEnd = txtEnd.Value
If Not IsDate(stStart) Or Not IsDate(stEnd) Then
MsgBox "Invalid Dates", vbExclamation, "Input Error"
GoTo ExitSub
End If
dbStart = CDbl(CDate(stStart))
dbEnd = CDbl(CDate(stEnd))
' change to highlight cell for time being
INSERT DELETE IF OUT OF RANGE HERE?
ExitSub:
Application.ScreenUpdating = 1
End Sub
提前致谢
最佳答案
如果您想删除整行,您可以使用 SpecialCells 并在额外的列中使用公式来执行此操作,该公式会引发错误...
我想我在 Excel MVP Ron De Bruin 的网站上看到了这一点:SpecialCells
这就是您要找的吗?
关于excel - 删除不在日期范围内的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10396137/