我有一大堆信息,我以“开始日期”和“结束日期”列的形式输入了一些内容。我想要做的是说,如果您选择的日期范围之外,则删除单元格的内容,每个单元格的右边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
提前致谢
答案 0 :(得分:0)
如果你想删除整行,你可以使用带有一个额外列的公式的SpecialCells来抛出错误...
我想我在Excel MVP Ron De Bruin的网站上看到了这一点:SpecialCells
是你在寻找什么?