#1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Selecting

Hopefully someone will clarify an issue for me that has me baffled. This is
not the first time that selection of a range in another worksheet generates
errors. I want to select a range in another worksheet. Excel keeps giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see what it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a consistent
manner.

Thank you,
Mark

  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Selecting

Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the code
is in a sheet module. In such cases, the unqualified Range("Positions") is
implicitly qualified by the sheet containing the code module. Since it is
not on that sheet, you get the error. Explicitly qualifying it removes that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in message
...
Hopefully someone will clarify an issue for me that has me baffled. This

is
not the first time that selection of a range in another worksheet

generates
errors. I want to select a range in another worksheet. Excel keeps

giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see what

it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a consistent
manner.

Thank you,
Mark



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 4
Default Selecting

Thank you Tom, for supplying the solution and the reasoning. I understand
the logic that you put forth but I don't like it. ;-)

Thank you for your help.

-Mark


"Tom Ogilvy" wrote:

Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the code
is in a sheet module. In such cases, the unqualified Range("Positions") is
implicitly qualified by the sheet containing the code module. Since it is
not on that sheet, you get the error. Explicitly qualifying it removes that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in message
...
Hopefully someone will clarify an issue for me that has me baffled. This

is
not the first time that selection of a range in another worksheet

generates
errors. I want to select a range in another worksheet. Excel keeps

giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see what

it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a consistent
manner.

Thank you,
Mark




  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 230
Default Selecting

Tom, are you saying that writing
Worksheets("PositionImports").Range("Positions").S elect
resolves the problem? I suppose this makes selecting the worksheet with
Worksheets("PositionImports").Select not of any (known) use in this context?

Bill




"Tom Ogilvy" wrote in message
...
Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the
code
is in a sheet module. In such cases, the unqualified Range("Positions")
is
implicitly qualified by the sheet containing the code module. Since it is
not on that sheet, you get the error. Explicitly qualifying it removes
that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in
message
...
Hopefully someone will clarify an issue for me that has me baffled. This

is
not the first time that selection of a range in another worksheet

generates
errors. I want to select a range in another worksheet. Excel keeps

giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see what

it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a consistent
manner.

Thank you,
Mark





  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 38
Default Selecting

Hi Bill

I believe waht Tom is saying is that:

Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

solves the problem.

You can't select a range on a sheet which is not active hence you must first
select (or activate) the sheet. Because the code in question is in a sheet
module any unqualified range is assumed to be on the sheet containing the
code which is why you must qualify the range when selecting it.

I hope this makes sense
Rowan

"William Benson" wrote:

Tom, are you saying that writing
Worksheets("PositionImports").Range("Positions").S elect
resolves the problem? I suppose this makes selecting the worksheet with
Worksheets("PositionImports").Select not of any (known) use in this context?

Bill




"Tom Ogilvy" wrote in message
...
Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the
code
is in a sheet module. In such cases, the unqualified Range("Positions")
is
implicitly qualified by the sheet containing the code module. Since it is
not on that sheet, you get the error. Explicitly qualifying it removes
that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in
message
...
Hopefully someone will clarify an issue for me that has me baffled. This

is
not the first time that selection of a range in another worksheet

generates
errors. I want to select a range in another worksheet. Excel keeps

giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see what

it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a consistent
manner.

Thank you,
Mark








  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Selecting

Both statements are required. The change in behavior i cited is more
restrictive, not less restrictive. Please re read the explanation.

--
Regards,
Tom Ogilvy

"William Benson" wrote in message
...
Tom, are you saying that writing
Worksheets("PositionImports").Range("Positions").S elect
resolves the problem? I suppose this makes selecting the worksheet with
Worksheets("PositionImports").Select not of any (known) use in this

context?

Bill




"Tom Ogilvy" wrote in message
...
Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the
code
is in a sheet module. In such cases, the unqualified Range("Positions")
is
implicitly qualified by the sheet containing the code module. Since it

is
not on that sheet, you get the error. Explicitly qualifying it removes
that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in
message
...
Hopefully someone will clarify an issue for me that has me baffled.

This
is
not the first time that selection of a range in another worksheet

generates
errors. I want to select a range in another worksheet. Excel keeps

giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see

what
it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a

consistent
manner.

Thank you,
Mark







  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 230
Default Selecting

Your explanation of previous (which I dutifully re-read) did no good to one
such as me, Tom, who did not know -- yes, after all these years, did not
know :-( -- that you cannot select a range on a non-active sheet.

Rowan's explanation did the trick.

Thanks all.

"Tom Ogilvy" wrote in message
...
Both statements are required. The change in behavior i cited is more
restrictive, not less restrictive. Please re read the explanation.

--
Regards,
Tom Ogilvy

"William Benson" wrote in message
...
Tom, are you saying that writing
Worksheets("PositionImports").Range("Positions").S elect
resolves the problem? I suppose this makes selecting the worksheet with
Worksheets("PositionImports").Select not of any (known) use in this

context?

Bill




"Tom Ogilvy" wrote in message
...
Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the
code
is in a sheet module. In such cases, the unqualified
Range("Positions")
is
implicitly qualified by the sheet containing the code module. Since it

is
not on that sheet, you get the error. Explicitly qualifying it removes
that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in
message
...
Hopefully someone will clarify an issue for me that has me baffled.

This
is
not the first time that selection of a range in another worksheet
generates
errors. I want to select a range in another worksheet. Excel keeps
giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see

what
it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a

consistent
manner.

Thank you,
Mark









  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 230
Default Selecting

It made sense after you explained to me that you cannot select a range on a
non-active sheet.

I have been learning to do nearly everything in the world to ranges without
selecting them first, therefore I forgot (or maybe never realized) this
fundamental fact.

Thanks Rowan!


"Rowan" <rowanzsa at hotmailNOSPAM dot com wrote in message
...
Hi Bill

I believe waht Tom is saying is that:

Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

solves the problem.

You can't select a range on a sheet which is not active hence you must
first
select (or activate) the sheet. Because the code in question is in a sheet
module any unqualified range is assumed to be on the sheet containing the
code which is why you must qualify the range when selecting it.

I hope this makes sense
Rowan

"William Benson" wrote:

Tom, are you saying that writing
Worksheets("PositionImports").Range("Positions").S elect
resolves the problem? I suppose this makes selecting the worksheet with
Worksheets("PositionImports").Select not of any (known) use in this
context?

Bill




"Tom Ogilvy" wrote in message
...
Worksheets("PositionImports").Select
Worksheets("PositionImports").Range("Positions").S elect

Assumes Range("Positions") is on Sheet PositionImports.

I assume you are running this with a command button or in any event the
code
is in a sheet module. In such cases, the unqualified
Range("Positions")
is
implicitly qualified by the sheet containing the code module. Since it
is
not on that sheet, you get the error. Explicitly qualifying it removes
that
problem.

--
Regards,
Tom Ogilvy



"Mark Petruszak" wrote in
message
...
Hopefully someone will clarify an issue for me that has me baffled.
This
is
not the first time that selection of a range in another worksheet
generates
errors. I want to select a range in another worksheet. Excel keeps
giving
me a run time error '1004'.

These errors occur even if I fully qualify the name, such as
Worksheets("PI").Range("P").Select. I also recorded a macro to see
what
it
generated for code, then copied that and still received the error.

This is the code that I am using currently:

Worksheets("PositionImports").Select
Range("Positions").Select

This is the error with the Range select line highlighted in the IDE:

Run time error '1004'

Method 'Range' of object '_Worksheet' failed.


What gives here? Excel seems to not deal with this issue in a
consistent
manner.

Thank you,
Mark








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
Selecting the next row up or down?????? Bob Excel Discussion (Misc queries) 3 April 9th 09 12:08 PM
SELECTING LAST ROW da Excel Discussion (Misc queries) 10 August 2nd 08 01:11 AM
Selecting the Same Steve COR Excel Discussion (Misc queries) 0 January 2nd 08 04:13 PM
VBA - Selecting a Row Elise148 Excel Discussion (Misc queries) 5 June 12th 07 04:29 PM
Selecting The Last Row Minitman[_4_] Excel Programming 15 July 25th 05 03:11 AM


All times are GMT +1. The time now is 05:52 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"