This could work (not tested). Assumes the headers in the tables (PersonName and TestDate) are consistent from sheet to sheet.

   With ActiveSheet.ListObjects(1)
    .Sort.SortFields.Add _
        Key:=Range(.Name & "[PersonName]"), SortOn:=xlSortOnValues, Order:= _
        xlAscending, DataOption:=xlSortNormal
    
    'Set sort on SurveyDate
    .Sort.SortFields.Add _
        Key:=Range(.Name & "[TestDate]"), SortOn:=xlSortOnValues, Order:= _
        xlAscending, DataOption:=xlSortTextAsNumbers
    
      'SORT---
      With .Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
      End With
    End With