Explain code

N

Novice Lee

Could someone explain the following code for me I'm new VBA and have never
seen some of these Items

Thanks

With Sheets(3)

LastRow = .Range("A" & Rows.Count).End(xlUp).Row
Set SortRange = .Rows("2:" & LastRow)
SortRange.Sort _
Key1:=Range("A2"), _
Order1:=xlAscending, _
Key2:=Range("C2"), _
Order2:=xlAscending, _
Header:=xlNo
End With
 
J

JLGWhiz

'Qualify the sheet you want to execute on
'using the "With" Statement.

With Sheets(3)

'Assign variable for last row with data in it.

LastRow = .Range("A" & Rows.Count).End(xlUp).Row

'Set the of object variable for the range to search.

Set SortRange = .Rows("2:" & LastRow)

'Execute the sort procedure

SortRange.Sort _
Key1:=Range("A2"), _
Order1:=xlAscending, _
Key2:=Range("C2"), _
Order2:=xlAscending, _
Header:=xlNo

'Close the "With" statement.

End With
 
J

JLGWhiz

For details of the individual words, you can view
the code in the Visual Basic Editor and highlight
the word you want to know more about, then
press F1. It will display the help file for that word,
if one exists. If not it will tell you that, too.
 
J

Joel

Here is futher explaination on the lastrow

LastRow = .Range("A" & Rows.Count).End(xlUp).Row

Rows.Count in the total number of rows on the worksheet. For excel 2003 it
is 65536, but excel 2007 it is larger.

The end statement has 4 different options
1) xlup
2) xldown
3) xltoleft
4) xltoright

the function end find the first cell that is not empty.

Sol the statemnt is Range("A65536") then move up Column A until a
non-empty cell is found and return the Row number

for last column use this statmen t

Cells(1,Columns.Count).end(xltoleft).Column


Which is Cells(1,256).end(xltoleft).Column
 
D

Dave Peterson

Just to add...

You'll want to qualify the ranges here, too:

SortRange.Sort _
Key1:=.Range("A2"), _
Order1:=xlAscending, _
Key2:=.Range("C2"), _
Order2:=xlAscending, _
Header:=xlNo

(I added dots in front of both Range()'s.)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top