Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Sorting multiple range using a macro

Hi,

I am tyring to use a macro to sort a group of ranges C1:D20, C21:D40,
......C31:D400. i need to sort each of these ranges based on entries in
coulmn C. There are 20 ranges here. Heres the code that I use to sort
the first two ranges.....

Range("C1:D20").Select
Selection.Sort Key1:=Range("C1"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False,
Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
Range("C21:D40").Select
Selection.Sort Key1:=Range("C21"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False,
Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

but i would prefer to use a for loop so that in case i change the
spreadsheet later it would be easy for me to change the code
too........

Dhanush



---
Message posted from http://www.ExcelForum.com/

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Sorting multiple range using a macro

Dhanush,

I have looked at your coding and am a little unsure how you are sorting
your ranges as they seem to over lap. I have not changed your coding,
just added to it in order to provide you with the loop function.

Sub Sort()
'
Dim rwIndex, ColIndex
'
rwIndex = 1
ColIndex = 3
'
Do Until Range("C" & rwIndex) = ""
rwIndex = rwIndex + 1
Loop
Range(Cells(1, 3), Cells(rwIndex, ColIndex)).Select
'
Range("C1:D20").Select
Selection.Sort Key1:=Range("C1"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Range("C21:D40").Select
Selection.Sort Key1:=Range("C21"), Order1:=xlAscending,
Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
'
Range("A1").Select
End Sub

It starts from C1 and continues looping until there is an empty cell in
Column C. Hence ColIndex being equal to 3.

Hope that this helps.
Kiza


---
Message posted from http://www.ExcelForum.com/

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Sorting multiple range using a macro

Hi Kiza,

I already have lots of space in each of the ranges. I mean not al
range have contents in all their cells hence I am not sure as how t
change your code suggestion to suit my needs...... the problem is tha
i am not all that good with VB..... Thanks for yo
suggestions.

Hi Don Guillett,

I tried to copy your code into the macro and i am getting an erro
statement "Can't execute code in break mode"

heres the code

Range("A651:A670").Select
For Each c In Selection
'MsgBox c
x = Left(c, InStr(c, ":") - 1)
'MsgBox x
'Range("C1:D20").Sort Key1:=Range("C1"), Order1:=xlAscending
Range(c).Sort Key1:=Range(x), Order1:=xlAscending
Next c

A651:A670 is where i have stored all the ranges that need to b
sorted... that is A651 = C1:D20 -- A652 = C21:D40 etc

For now i am individualy sorting each range in the code......But woul
like to make the code short my looping

Dhanus

--
Message posted from http://www.ExcelForum.com

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
sorting range Jase Excel Discussion (Misc queries) 1 September 30th 08 06:42 PM
Sorting a Range cmm Excel Discussion (Misc queries) 1 June 30th 06 01:35 PM
Sorting range multiple areas Dave Peterson[_3_] Excel Programming 0 August 12th 04 03:18 AM
Sorting range multiple areas No Name Excel Programming 0 August 11th 04 05:02 PM
Sorting Range Help HelpMe Excel Programming 4 January 8th 04 08:53 PM


All times are GMT +1. The time now is 06:24 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"