Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
XL2002 - Sort xlAscedending / xlDescending
Dear All
I have a simple table (with a header row) containing 5 columns - 3 of the columns will need to be sorted by the user. Above each of the columns that need sorting there is a shape that is used to run the sorting macro. Here's what I'd like to do. 1 - Rather than creating 3 macros to sort 3 columns I'd like to create one that runs depending on which button, (or shape in this case), is selected. 2 - Depending on the current order of the sorted list, I'd like the macro to do the opposite - i.e. if the list is currently xlAscending, next time the button is pressed for that list, it sorts in xlDescending. Code below - any help appreciated Trevor Williams. -------- Sub SortEachCol() Dim shp As Shape Set shp = ActiveSheet.Shapes(Application.Caller) myCol = shp.TopLeftCell.Column 'this returns a column number, not letter 'this checks to see last sort order and sets myOrder to the opposite order If Range("L13") = "xlAscending" Then myOrder = "xlDescending" Else myOrder = "xlAscending" End If 'this sorts the list - I need to chnge the Range("C:C") to Range(myCol) 'and set Order1:=myOrder Range("C12:G24").Sort Key1:=Range("C:C"), Order1:=xlDescending, Header:=xlYes, OrderCustom:=1, MatchCase:=False, _ Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal 'this updates the new sort order Range("L13") = myOrder End Sub |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
XL2002 SUM with a twist... | Excel Worksheet Functions | |||
XL2002 - SeriesCollection.Index | Excel Programming | |||
xl2002 problem | Excel Programming | |||
Semi-hang in XL2002 | Excel Discussion (Misc queries) | |||
Using min and max function XL2002 | Excel Worksheet Functions |