【发布时间】:2012-04-20 17:48:49
【问题描述】:
下面的代码可以正常工作。但是,当用户在 InputBox 中不包含任何内容或单击“关闭”按钮或输入一个不存在的值时,我希望它显示msgbox 说明原因并删除工作表“PreTotal”。
有没有更好的方法来处理用户输入?需要一些帮助来了解如何去做。谢谢。
Sub Filterme()
Dim wSheetStart As Worksheet
Dim rFilterHeads As Range
Dim strCriteria As String
Set wSheetStart = ActiveSheet
Set rFilterHeads = Range("M1", Range("M1").End(xlToLeft))
With wSheetStart
.AutoFilterMode = False
rFilterHeads.AutoFilter
strCriteria = InputBox("Enter Date - MMDDYY")
If strCriteria = vbNullString Then Exit Sub
rFilterHeads.AutoFilter Field:=13, Criteria1:="=*" & strCriteria & "*"
End With
Worksheets("PreTotal").UsedRange.Copy
Sheets.Add.Name = "Total"
Worksheets("Total").Range("A1").PasteSpecial
End Sub
【问题讨论】: