+ Reply to Thread
Results 1 to 2 of 2

Sorting - use of variable sort key

  1. #1
    Registered User
    Join Date
    05-04-2005
    Location
    Papamoa, New Zealand
    MS-Off Ver
    Office 365
    Posts
    56

    Sorting - use of variable sort key

    Hi,

    I am trying to build a macro that will sort three sets of data in the same sheet. The difficulty is that the sort key will vary each time as data may have been added or removed from each table and thus the row number of the sort key will change.

    I tried setting a "name" as the sort key but if this row is deleted then I lose the name and the macro won't work.


    Sub SSB_Name_Sort()

    Application.ScreenUpdating = False

    Range("SortSSBs1").Select
    Selection.Sort Key1:=Range("A3:A3"), Order1:=xlAscending, Header:=xlYes, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

    Range("SortSSBs2").Select
    Selection.Sort Key1:=Range("A44:A44"), Order1:=xlAscending, Header:=xlYes, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

    Range("SortSSBs3").Select
    Selection.Sort Key1:=Range("A85:A85"), Order1:=xlAscending, Header:=xlYes, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Range("A1").Select


    End Sub

    Can someone help me here please.

    Cheers,
    Bernz

  2. #2
    Registered User
    Join Date
    05-04-2005
    Location
    Papamoa, New Zealand
    MS-Off Ver
    Office 365
    Posts
    56

    Sorting - use of variable sort key

    Hi,

    Found a solution myself now.

    Made the Header as NO and made the Sort Key the same as the range to be sorted.

    This is what I now have and it seems to work okay.

    Sub SSB_Name_Sort()


    Application.ScreenUpdating = False

    Range("SortSSBs1").Select
    Selection.Sort Key1:=Range("SortSSBs1"), Order1:=xlAscending, Header:=xlNo, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

    Range("SortSSBs2").Select
    Selection.Sort Key1:=Range("SortSSBs2"), Order1:=xlAscending, Header:=xlNo, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

    Range("SortSSBs3").Select
    Selection.Sort Key1:=Range("SortSSBs3"), Order1:=xlAscending, Header:=xlNo, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
    Range("A1").Select


    End Sub

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1