My code is not really applicable here, being more concerned with altering a range name.
Try the following, which assumes a sort on column B. The code assumes data has been entered in columns A & B and will then be triggered by a change in column C, so this may require adjustment depending upon how data etc. is inserted/changed.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 3 Then
Range("A8:AK" & Target.Row()).Select
Selection.Sort Key1:=Range("B8"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Cells(Target.Row() + 1, "A").Select
End If
End Sub