Just guessing here
You have a Range variable named SaleSheetData, and a Named Range called SaleSheetData (I never use the same name for things since I get confused)
Set SaleSheetData = wSale.Range("SaleSheetData")
but it looks like you're inconsistent here when you use the object variable and the name of the range …
xLines = Application.WorksheetFunctions.CountIf(Range(SaleSheetData.Offset(0, 80), SaleSheetData.End(xlDown)), matchX)
yLines = WorksheetFunctions.CountIf(WorksheetFunctions.Index("SaleSheetData", 0, 80), matchY)
Maybe you want something like this??
xLines = Application.WorksheetFunctions.CountIf(Range(SaleSheetData.Offset(0, 80), SaleSheetData.End(xlDown)), matchX)
yLines = Application.WorksheetFunctions.CountIf(Application.WorksheetFunctions.Index(SaleSheetData, 0, 80), matchY)
No data to test with so you'll have to give this a try yourself. Although I'm not sure about your Range(…)
You can simplify a little
With Application.WorksheetFunctions
xLines = .CountIf(Range(SaleSheetData.Offset(0, 80), SaleSheetData.End(xlDown)), matchX)
yLines = .CountIf(.Index(SaleSheetData, 0, 80), matchY)
End With