Excel的VBA:帮助,没有什么被复制。 我做错了什么?

我正在为我的办公室做这个代码。 它处理xlsx文件并过滤数据并将其粘贴到其他xlsx文件中的单个单元中。 还有一个UserForm。 由于机密性,我不能发布xlsx文件,但是我可以在这里发布我的代码。 主要的问题是:目标文件没有复制数据(又称单元格为空)。

Private Sub cmd_start_Click() '//Up speed Application.ScreenUpdating = False Application.DisplayAlerts = False '//Initialize and Open Progress Bar Dim i_progress As Integer, pctCompl As Single '//Open people_database Workbooks.Open (txt_db) Dim win_db As String win_db = ActiveWorkbook.Name '//Count rows/rms in rm sheet Dim rm_rows As Integer rm_rows = Application.CountA(range("A1:A500")) '//Data processing declarations Dim tt As String, loans As String, sec As String, fx As String, apr As String, eur As String, tthm As String, sechm As String, fxhm As String, loanshm As String, samples As String tt = "B" loans = "C" sec = "D" fx = "E" apr = "F" eur = "G" tthm = "H" sechm = "I" fxhm = "J" loanshm = "K" samples = "L" Dim rm_name As String, rm_sample_row As Integer, rm_fail_row As Integer Dim math_count As Integer Dim i As Integer, row_number As Integer Dim win_rm_reporting As String Dim win_arm_reporting As String Dim win_ws_reporting As String Dim strRange As String '//=FX FILE PROCESSING START= Workbooks.Open (txt_fx) Dim win_fx_source As String win_fx_source = ActiveWorkbook.Name '//=RM NAME LIST LOOP START= Workbooks.Open (txt_rm) win_rm_reporting = ActiveWorkbook.Name '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract RM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("rm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect FX sample size Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open RM Reporting File and fill in FX sample count Windows(win_rm_reporting).Activate Let strRange = fx & rm_sample_row '//Debug '//MsgBox ("fx = " & fx & " AND " & "rm_sample_row = " & rm_sample_row) Sheets("RM").range(strRange) = math_count '//PROGRESSBAR 1 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect FX fails Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open RM Reporting file and fill in FX fail count Windows(win_rm_reporting).Activate Let strRange = fx & rm_fail_row Sheets("RM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=RM NAME LIST LOOP END= Windows(win_rm_reporting).Close '//=ARM NAME LIST LOOP START= Workbooks.Open (txt_arm) win_arm_reporting = ActiveWorkbook.Name '//Get ARM Count Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract ARM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect FX sample size Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//PROGRESSBAR 2 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Open ARM Reporting File and fill in FX sample count Windows(win_arm_reporting).Activate Let strRange = fx & rm_sample_row Sheets("ARM").range(strRange) = math_count '//Collect FX fails Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in FX fail count Windows(win_arm_reporting).Activate Let strRange = fx & rm_fail_row Sheets("ARM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=ARM NAME LIST LOOP END= Windows(win_arm_reporting).Close '//=WS NAME LIST LOOP START= Workbooks.Open (txt_ws) win_ws_reporting = ActiveWorkbook.Name '//Get WS Count Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract WS search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//PROGRESSBAR 3 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect FX sample size Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open WS Reporting File and fill in FX sample count Windows(win_ws_reporting).Activate Let strRange = fx & rm_sample_row Sheets("Wealth Solutions").range(strRange) = math_count '//Collect FX fails Windows(win_fx_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in FX fail count Windows(win_ws_reporting).Activate Let strRange = fx & rm_fail_row Sheets("Wealth Solutions").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=WS NAME LIST LOOP END= Windows(win_ws_reporting).Close '//=FX FILE PROCESSING END= Windows(win_fx_source).Close '//=fxhm FILE PROCESSING START= Workbooks.Open (txt_fxhm) Dim win_fxhm_source As String win_fxhm_source = ActiveWorkbook.Name '//=RM NAME LIST LOOP START= Workbooks.Open (txt_rm) win_rm_reporting = ActiveWorkbook.Name '//Get RM Count Windows(win_db).Activate ActiveWorkbook.Sheets("rm").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract RM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("rm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect fxhm sample size Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open RM Reporting File and fill in fxhm sample count Windows(win_rm_reporting).Activate Let strRange = fxhm & rm_sample_row Sheets("RM").range(strRange) = math_count '//PROGRESSBAR 1 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect fxhm fails Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open RM Reporting file and fill in fxhm fail count Windows(win_rm_reporting).Activate Let strRange = fxhm & rm_fail_row Sheets("RM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=RM NAME LIST LOOP END= Windows(win_rm_reporting).Close '//=ARM NAME LIST LOOP START= Workbooks.Open (txt_arm) win_arm_reporting = ActiveWorkbook.Name '//Get ARM Count Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract ARM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect fxhm sample size Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//PROGRESSBAR 2 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Open ARM Reporting File and fill in fxhm sample count Windows(win_arm_reporting).Activate Let strRange = fxhm & rm_sample_row Sheets("ARM").range(strRange) = math_count '//Collect fxhm fails Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in fxhm fail count Windows(win_arm_reporting).Activate Let strRange = fxhm & rm_fail_row Sheets("ARM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=ARM NAME LIST LOOP END= Windows(win_arm_reporting).Close '//=WS NAME LIST LOOP START= Workbooks.Open (txt_ws) win_ws_reporting = ActiveWorkbook.Name '//Get WS Count Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract WS search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//PROGRESSBAR 3 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect fxhm sample size Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open WS Reporting File and fill in fxhm sample count Windows(win_ws_reporting).Activate Let strRange = fxhm & rm_sample_row Sheets("Wealth Solutions").range(strRange) = math_count '//Collect fxhm fails Windows(win_fxhm_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in fxhm fail count Windows(win_ws_reporting).Activate Let strRange = fxhm & rm_fail_row Sheets("Wealth Solutions").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=WS NAME LIST LOOP END= Windows(win_ws_reporting).Close '//=fxhm FILE PROCESSING END= Windows(win_fxhm_source).Close '//=sec FILE PROCESSING START= Workbooks.Open (txt_sec) Dim win_sec_source As String win_sec_source = ActiveWorkbook.Name '//=RM NAME LIST LOOP START= Workbooks.Open (txt_rm) win_rm_reporting = ActiveWorkbook.Name '//Get RM Count Windows(win_db).Activate ActiveWorkbook.Sheets("rm").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract RM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("rm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect sec sample size Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open RM Reporting File and fill in sec sample count Windows(win_rm_reporting).Activate Let strRange = sec & rm_sample_row Sheets("RM").range(strRange) = math_count '//PROGRESSBAR 1 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect sec fails Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open RM Reporting file and fill in sec fail count Windows(win_rm_reporting).Activate Let strRange = sec & rm_fail_row Sheets("RM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=RM NAME LIST LOOP END= Windows(win_rm_reporting).Close '//=ARM NAME LIST LOOP START= Workbooks.Open (txt_arm) win_arm_reporting = ActiveWorkbook.Name '//Get ARM Count Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract ARM search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("arm").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//Collect sec sample size Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//PROGRESSBAR 2 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Open ARM Reporting File and fill in sec sample count Windows(win_arm_reporting).Activate Let strRange = sec & rm_sample_row Sheets("ARM").range(strRange) = math_count '//Collect sec fails Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in sec fail count Windows(win_arm_reporting).Activate Let strRange = sec & rm_fail_row Sheets("ARM").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=ARM NAME LIST LOOP END= Windows(win_arm_reporting).Close '//=WS NAME LIST LOOP START= Workbooks.Open (txt_ws) win_ws_reporting = ActiveWorkbook.Name '//Get WS Count Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate rm_rows = Application.CountA(range("A1:A500")) '//For-loop Start row_number = 1 For i = 1 To rm_rows '//Extract WS search data from database file Windows(win_db).Activate ActiveWorkbook.Sheets("ws").Activate Let strRange = "A" & row_number rm_name = range(strRange).Value Let strRange = "B" & row_number rm_sample_row = range(strRange).Value Let strRange = "C" & row_number rm_fail_row = range(strRange).Value '//PROGRESSBAR 3 of 10 i_progress = i_progress + 10 pctCompl = i_progress progress pctCompl '//Collect sec sample size Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open WS Reporting File and fill in sec sample count Windows(win_ws_reporting).Activate Let strRange = sec & rm_sample_row Sheets("Wealth Solutions").range(strRange) = math_count '//Collect sec fails Windows(win_sec_source).Activate range("A1").Select Selection.AutoFilter ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=4, Criteria1:=combo_month ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=3, Criteria1:="=*" & rm_name & "*" _ , Operator:=xlAnd ActiveSheet.range("$A$1:$T$300").AutoFilter Field:=14, Criteria1:="FAIL" range("A1:N300").Select Selection.Copy Sheets.add After:=Sheets(Sheets.Count) ActiveSheet.Paste math_count = Application.CountA(range("N2:N300")) ActiveWindow.SelectedSheets.Delete range("A1").Select Selection.AutoFilter 'remove autofilter '//Open Already-open ARM Reporting file and fill in sec fail count Windows(win_ws_reporting).Activate Let strRange = sec & rm_fail_row Sheets("Wealth Solutions").range(strRange) = math_count '//Add to row_number count row_number = row_number + 1 '//For-loop END Next i '//=WS NAME LIST LOOP END= Windows(win_ws_reporting).Close '//=sec FILE PROCESSING END= Windows(win_sec_source).Close '//Up speed Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub