This is happening when SourceShtNme is Summary, and/or it's the first copy to the destination sheet, which is blank? If you select A1 on a blank sheet then on the keyboard, press End and DownArrow, it will take you to the bottom of the sheet. Not good. Either take Summary out of the loop or change the way it finds the first empty row.
Change:
.Range("A1").End(xlDown).Offset(1).Value = SourceShtNme
to:
.cells(.rows.count,1).end(xlup).Offset(1).Value = SourceShtNme
and:
Sheets(SourceShtNme).AutoFilter.Range.Copy .Range("A1").End(xlDown).Offset(1)
to:
Sheets(SourceShtNme).AutoFilter.Range.Copy .cells(.rows.count,1).end(xlup).Offset(1)
This now effectively does the same as sellecting the very bottom cell of the sheet in column A and pressing End then UpArrow on the keyboard.
But I reiterate, perhaps Summary sheet is different enough not to include it in the loop. You're making extra work for yourself.