Sort Problem - dynamically set the upper bound
I am sorting data and it is not sorting completely. I ploped the sort into my
code and forgot that my range is dynamic. The second range value is not the same because the size of the output changes based on the data that I process varies. I know how many rows (by a variable) I have of output but how do I dynamically set the Range. The lower bound is A2 but the upper bound is not C20. This is the sort I am using: ' Sort the report with preference in Ascending order ' 1) Logger ID, 2) Date and 3) Load Count WBNew.Worksheets("Sheet1").Range("A2:C20").Sort _ Key1:=Worksheets("Sheet1").Range("B2"), _ Key2:=Worksheets("Sheet1").Range("A2"), _ Key3:=Worksheets("Sheet1").Range("C2") Thanks |
Sort Problem - dynamically set the upper bound
The solution is simple. Your sort range is defined by the following statement
WBNew.Worksheets("Sheet1").Range("A2:C20").Sort _ You just need to change the range to be variable Lastrow = 125 WBNew.Worksheets("Sheet1").Range("A2:C" & LastRow).Sort _ "Nils Titley" wrote: I am sorting data and it is not sorting completely. I ploped the sort into my code and forgot that my range is dynamic. The second range value is not the same because the size of the output changes based on the data that I process varies. I know how many rows (by a variable) I have of output but how do I dynamically set the Range. The lower bound is A2 but the upper bound is not C20. This is the sort I am using: ' Sort the report with preference in Ascending order ' 1) Logger ID, 2) Date and 3) Load Count WBNew.Worksheets("Sheet1").Range("A2:C20").Sort _ Key1:=Worksheets("Sheet1").Range("B2"), _ Key2:=Worksheets("Sheet1").Range("A2"), _ Key3:=Worksheets("Sheet1").Range("C2") Thanks |
Sort Problem - dynamically set the upper bound
Joel,
I was thinking that way but I did't use the right syntex. Thanks "Joel" wrote: The solution is simple. Your sort range is defined by the following statement WBNew.Worksheets("Sheet1").Range("A2:C20").Sort _ You just need to change the range to be variable Lastrow = 125 WBNew.Worksheets("Sheet1").Range("A2:C" & LastRow).Sort _ "Nils Titley" wrote: I am sorting data and it is not sorting completely. I ploped the sort into my code and forgot that my range is dynamic. The second range value is not the same because the size of the output changes based on the data that I process varies. I know how many rows (by a variable) I have of output but how do I dynamically set the Range. The lower bound is A2 but the upper bound is not C20. This is the sort I am using: ' Sort the report with preference in Ascending order ' 1) Logger ID, 2) Date and 3) Load Count WBNew.Worksheets("Sheet1").Range("A2:C20").Sort _ Key1:=Worksheets("Sheet1").Range("B2"), _ Key2:=Worksheets("Sheet1").Range("A2"), _ Key3:=Worksheets("Sheet1").Range("C2") Thanks |
All times are GMT +1. The time now is 01:56 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com