View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Bob Phillips Bob Phillips is offline
external usenet poster
 
Posts: 10,593
Default vba sort range problem

GroupIt is a range so you cannot set it to a string. Anyway, you don't need
it

Sub SortGroup()
Dim LastRow As Long
If WorksheetFunction.CountA(Cells) 0 Then
'Search for any entry, by searching backwards by Rows.
LastRow = Cells.Find(What:="*", After:=[A1], _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
'MsgBox LastRow
End If
Range("B3:E" + LastRow).Sort Key1:=ActiveCell, _
Order1:=xlAscending, _
Header:=xlGuess, _
OrderCustom:=1, _
MatchCase:=False, _
Orientation:=xlTopToBottom ' , _
DataOption1:=xlSortNormal

End Sub





--
HTH

Bob Phillips

(replace somewhere in email address with gmail if mailing direct)

"ADK" wrote in message
...
Beginner at vba.
Get error at line: GroupIt = "B3:E" + LastRow

Example of what I am trying to do: say last row is 36 this time around, so
GroupIt would = B3:E36

What code can perform this correctly?


Sub SortGroup()
Dim GroupIt As Range
Dim LastRow As Long
If WorksheetFunction.CountA(Cells) 0 Then
'Search for any entry, by searching backwards by Rows.
LastRow = Cells.Find(What:="*", After:=[A1], _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Row
'MsgBox LastRow
End If
GroupIt = "B3:E" + LastRow
Range(GroupIt).Select
Selection.Sort Key1:=ActiveCell, Order1:=xlAscending, Header:=xlGuess,

_
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom ' ,
DataOption1:=xlSortNormal

End Sub