Thanks for the replies, think my question was well and truly answered so marking as solved
Just in case your interested i chose to use a function in the end for my sorting as follows
Function Filter(StrData As String, StrFilter As String)
Range(StrData).Select
Application.CutCopyMode = False
Selection.Sort Key1:=Range(StrFilter), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
End Function
Sub Filter1()
Filter "A2:B6", "B1"
Filter "C2:D6", "D1"
End Sub