View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Sandy Mann Sandy Mann is offline
external usenet poster
 
Posts: 2,345
Default Inconsistent Sorting

Saxman,

If by code you mean VBA try something like:

Option Explicit
Sub SortIt()
Dim Last_Row As Long
Dim First_Row As Long
First_Row = 1

Application.ScreenUpdating = False

Do While Cells(First_Row, 1).Value < ""

Last_Row = Cells(First_Row, 1).End(xlDown).Row

Range(Cells(First_Row + 2, 1), Cells(Last_Row, 1)). _
Sort Key1:=Cells(First_Row + 2, 1), _
Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, _
Orientation:=xlTopToBottom

First_Row = Last_Row + 2

Loop

Application.ScreenUpdating = True

End Sub


--
HTH

Sandy
In Perth, the ancient capital of Scotland
and the crowning place of kings


with @tiscali.co.uk


"Saxman" wrote in message
...
I need to sort columns of data, but in batches on the same worksheet. e.g.
There will always be a heading on row 1, followed by a sub-heading on row.
Then follows data on rows 3 - 10. Finally, a blank line (row 11).

In this example the next batch of data commences on row 12 (heading) and
row 13 (sub-heading), followed by 13 lines of data (rows 14 - 25). As
above, a blank line finishes the sequence on row 26.

1 Heading
2 Sub-heading
3 Data
4 Data
5 Data
6 Data
7 Data
8 Data
9 Data
10 Data
11 Blank
12 Heading
13 Sub-heading
14 Data
15 Data
16 Data
17 Data
18 Data
19 Data
20 Data
21 Data
22 Data
23 Data
24 Data
25 Data
26 Blank

The data part of the worksheet always varies, which is my problem. Data
can be anything from 1 to 40 lines. Could some code be created which
would recognise the blank line and sort each batch of data by a chosen
column?

The data represents horses in a race, which varies from day to day.