I've been told my countifs code is bad practice and worried it might crash. I have over 200 rows of code like this. Do I need to add variables or loops to make it better? Other lines have different criteria and more criteria, so it's pretty involved. My data only has up to 100,000 rows and it works OK...only takes a few seconds to complete. I have heaps of other code doing other stuff but this is the only part I was told is bad practice. I'm a newbie with no variable experience. Any suggestions much appreciated, thanks Cobber.
'Counts the data on sheet 2 and populates on sheet 1
'counts total, pass and fail
Sheets(1).Range("D5").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "RDG1", Range("G7:G10000"), "Sewer Works")
'counts pass
Sheets(1).Range("E5").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "RDG1", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "PASS")
'counts fail
Sheets(1).Range("F5").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "RDG1", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "FAIL")
'seperate areas
Sheets(1).Range("D6").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "TYH2", Range("G7:G10000"), "Sewer Works")
Sheets(1).Range("E6").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "TYH2", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "PASS")
Sheets(1).Range("F6").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "TYH2", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "FAIL")
Sheets(1).Range("D7").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "UJM3", Range("G7:G10000"), "Sewer Works")
Sheets(1).Range("E7").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "UJM3", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "PASS")
Sheets(1).Range("F7").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "UJM3", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "FAIL")
Sheets(1).Range("D8").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "OPL4", Range("G7:G10000"), "Sewer Works")
Sheets(1).Range("E8").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "OPL4", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "PASS")
Sheets(1).Range("F8").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "OPL4", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "FAIL")
Sheets(1).Range("D9").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "HUJ5", Range("G7:G10000"), "Sewer Works")
Sheets(1).Range("E9").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "HUJ5", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "PASS")
Sheets(1).Range("F9").Value = Application.WorksheetFunction.CountIfs(Range("C7:C10000"), "HUJ5", Range("G7:G10000"), "Sewer Works", Range("I7:I10000"), "FAIL")
'calculates percent score after the columns are populated on sheet 1
Range("G5").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G6").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G7").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G8").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G9").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G10").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G11").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G12").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G13").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"
Range("G14").Select
ActiveCell.FormulaR1C1 = "=RC[-2]/RC[-3]"