ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Ranges:Target in Worksheet_SelectionChange(ByVal Target As Range) (https://www.excelbanter.com/excel-programming/327499-ranges-target-worksheet_selectionchange-byval-target-range.html)

Kevin McCartney

Ranges:Target in Worksheet_SelectionChange(ByVal Target As Range)
 
Hi TWIMC,

What I'm trying to do is to call a sub procedure to run some code when a
user selects two or more cells that are not directly next to each other e.g.
perform sub procedure when the Target range address is like $B$34,$B$47 or
like $B$34:$B$47,$B$68, $B$34:$B$47,$B$68:$B$74 but don't perform the sub
procedure when the Target address is like $B$34:$B$42. Now I know I could use
some code like Instr(1,Targret,",") and pull each section out one by one, but
that to me that's a bit cheesy, hence is there a way to renumerate each range
within the Target ranges to see if it is made up of one or two ranges and if
so retrieve each internal range.

Any help/advice much appriciated.

TIA
KM

P Sitaram[_2_]

Ranges:Target in Worksheet_SelectionChange(ByVal Target As Range)
 
Try this test:

Target.Areas.Count 1


Bernie Deitrick

Ranges:Target in Worksheet_SelectionChange(ByVal Target As Range)
 
Kevin,

Use this as the top of your code:

If Target.Areas.Count = 1 Then Exit Sub

HTH,
Bernie
MS Excel MVP


"Kevin McCartney" wrote in
message ...
Hi TWIMC,

What I'm trying to do is to call a sub procedure to run some code when a
user selects two or more cells that are not directly next to each other

e.g.
perform sub procedure when the Target range address is like $B$34,$B$47 or
like $B$34:$B$47,$B$68, $B$34:$B$47,$B$68:$B$74 but don't perform the sub
procedure when the Target address is like $B$34:$B$42. Now I know I could

use
some code like Instr(1,Targret,",") and pull each section out one by one,

but
that to me that's a bit cheesy, hence is there a way to renumerate each

range
within the Target ranges to see if it is made up of one or two ranges and

if
so retrieve each internal range.

Any help/advice much appriciated.

TIA
KM




Kevin McCartney

Ranges:Target in Worksheet_SelectionChange(ByVal Target As Range)
 
Cheers, to the both of you.


All times are GMT +1. The time now is 08:00 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com