Try this macro on the FIRST sheet, the original data.
Option Explicit
Sub BirthdaySort()
Dim lastrow As Long, firstrow As Long
lastrow = Range("A" & Rows.Count).End(xlUp).Row
firstrow = ActiveSheet.UsedRange.Row + 1
Application.ScreenUpdating = False
Range("D" & firstrow, "D" & lastrow).FormulaR1C1 = "=LEFT(RC[-1],2)"
Range("E" & firstrow, "E" & lastrow).FormulaR1C1 = "=MID(RC[-2],4,2)"
Range("A" & firstrow - 1, "E" & lastrow).Sort Key1:=Range("E" & firstrow), Order1:=xlAscending, Key2:=Range("D" & firstrow) _
, Order2:=xlAscending, Header:=xlYes, OrderCustom:=1, MatchCase:=False _
, Orientation:=xlTopToBottom, DataOption1:=xlSortTextAsNumbers, _
DataOption2:=xlSortTextAsNumbers
Range("D:E").ClearContents
Application.ScreenUpdating = True
End Sub
Bookmarks