How do I write a varying range to sort.Got this now

ActiveCell.Range("A1:Q11").sort Key1:=ActiveCell.Offset(0, 4).Range("A1"), _
Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False _
, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal

Problem is the next range's parameters are allways either smaller or bigger than ("a1:q11") in rows. The columns are allways the same.And there are a alot of these small tables to sort on a sheet.