我的代码基于只是数据的另一个文件收集信息,并将数据复制并粘贴到我的主文件夹中。我已经将Dim设置为范围B1,但是现在,如果在字段中找不到B1中的数据,我正在寻找它,只需将所有空白单元格复制到主文件夹中即可。
如果变量不在字段中,我将需要它停止
Sub Sheet01()
'
' Sheet01 Macro
'
'
Application.ScreenUpdating = False
Dim varField As String
varField = Range("B1")
With ActiveSheet
Range("Q3:AA2999").Select
Selection.ClearContents
Workbooks.Open Filename:= _
"V:\Training\Share\Intraday Training Tracker\Agent Suite Raw Data\AgentSuite - Current.xlsx"
Sheets("ActivityDetails").Select
ActiveSheet.Range("$A$1:$K$197561").AutoFilter Field:=4, Criteria1:=Array( _
"CS", "Cons", "Medium", "MobOutbound", "NC", _
"PMobile", "Personal Team", "ST", "SmBu", "Tech", _
"Tech Support "), Operator:=xlFilterValues
ActiveSheet.Range("$A$1:$K$197561").AutoFilter Field:=10, Criteria1:=Array( _
"Complete", "Eligible", "NotScheduled", "Processing", "Scheduled"), Operator:=xlFilterValues
ActiveSheet.Range("$A$1:$K$197561").AutoFilter Field:=11, Criteria1:="1"
ActiveSheet.Range("$A$1:$K$197561").AutoFilter Field:=1, Criteria1:=varField
当前我没有收到任何错误消息。
答案 0 :(得分:0)
如果过滤器找不到任何值,则不会出现错误。我建议您在打开工作簿并选择工作表(建议您查找如何避免激活/选择)之后,执行Range.Find
来确定varField
是否存在。如果没有,则可以退出Sub或执行其他操作。
Set FindRng = Sheets("ActivityDetails").Columns(1).Find(varField)
If FindRng Is Nothing Then
Exit Sub
End If