View Single Post
  #3   Report Post  
Posted to microsoft.public.excel.programming
Mike Mike is offline
external usenet poster
 
Posts: 3,101
Default Select next object

See, basically what I have is a map with several objects inside it. Each
state is an object. At times, the user will have every object selected so
that it can be copied. I then want to be able to have the user select another
macro, either if all objects are still selected, or if only one object is
selected. Each Map on the sheet has a different number, which is part of
every object in that map, say 35. So I want to be able to pull that map
number out so that the next macro can be ran. If the user has one object
selected in the map prior to running the macro, no problem. I can pull the
number out of the object name. BUT, if they have all objects selected on the
map, I can't pull out the number. So I could figure out the code to select
only one object from the selected objects. This probably isn't making any
sense. Sorry.

"Tom Ogilvy" wrote:

Objects aren't relative to each other.

I guess you could do

Dim bMe as Boolean, shp as Shape
Dim oshp as Shape, bGoForward as Boolean
for each shp in Activesheet.shapes
if shp.name = selection.Name then
if not bGoForward then
oshp.select
exit for
end if
bme = true
end if
if bGoForward then
if bme and not shp.Name < selection.Name then
bme = False
shp.Select
exit for
end if
end if
set oshp = shp
Next

but I believe this collection is in the order the shapes were added.

--
Regards,
Tom Ogilvy


"Mike" wrote:

I want to write code to select the next object (like hitting Tab) and select
the last object (like Shift-Tab). But when I record this macro, it specifies
code for selecting the actual object name. Even if I click the relative box.
How can I do this so that I don't have to specify the name of the object, so
it will work on any set of objects?