View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
NewbiePete NewbiePete is offline
external usenet poster
 
Posts: 2
Default extend selected CurrentRegion results in application or objectdef

On Jun 1, 9:25*pm, Joel wrote:
an area is just like a worksheet it starts with row 1 and column 1. *There is
no such thing as row(0). *Arrays do start at index 0.



" wrote:
Hi


I've tried many work-arounds & read many posts - it's probably
something simple so please bare with this learner.


please help with the correct syntax for these lines:
'tbl.Offset(0, 0).Resize(tbl.Rows(0), tbl.Columns(2)).Select &
*'.Offset(0, -2).Select


I have CurrentRegion selected (A to I, variable rows)
I want to custom sort on K which contains a UDF which inserts the
colour index of col G (no problems with this part)
J is empty *(when I tried the UDF in J the index value & sort kept
messing up - #Value)
& then
re-select the original CurrentRegion so that I can set the print
range.


Sub SortByColourWorkLog()
Dim tbl As Range
'
'sorts on =ColorIndexOfCell(G2) function in mod 1
'
Application.Volatile
Selection.CurrentRegion.Select
Set tbl = ActiveCell.CurrentRegion
'tbl.Offset(0, 0).Resize(tbl.Rows(0), tbl.Columns(2)).Select '(error
occuring here)


* Selection.Sort Key1:=Range("K2"), Order1:=xlDescending,
Key2:=Range("H2") _
* * * * , Order2:=xlAscending, Header:=xlYes, OrderCustom:=7,
MatchCase:=False _
* * * * , Orientation:=xlTopToBottom, DataOption1:=xlSortNormal,
DataOption2:= _
* * * * xlSortNormal
* *'.Offset(0, -2).Select * '(want to re-select the original
"CurrentRegion")
* * ActiveSheet.PageSetup.PrintArea = Selection.CurrentRegion
End Sub


Cheers again
Peta- Hide quoted text -


- Show quoted text -


Hi Joel

thanks for you reply, sorry for the delay - I've had trouble re-
posting.

I had previously tried: tbl.Offset(0, 2).Resize(tbl.Rows(0),
tbl.Columns(2)).Select
and it moved the whole selected region two columns to the right. Hence
I though (0, 0) might keep it where it was & extend 2 columns with
tbl.Columns(2)...

Anyway I tried tbl.Offset(1, 1).Resize(tbl.Rows(0),
tbl.Columns(2)).Select
which is what I though you were getting at and got the same error
message:
1004 application or object defined error.

If you or anyone else has any further help or comments I'd be very
greatful.
regards
Peta