Sub SortByMailDomain()
Application.ScreenUpdating = False
With Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
.TextToColumns , xlDelimited, xlTextQualifierNone, False, False, False, False, False, True, "@"
.Resize(, 2).Sort Range("B1"), xlAscending, , , , , , xlNo
.Value = Evaluate(Replace("A1:A#&""@""&B1:B#", "#", Range("A" & Rows.Count).End(xlUp).Row))
.Offset(, 1).Clear
End With
End Sub