intercepting double-click event

S

Scott

Sheet.1 is a rectangle. Sheet.2 is a rectangle of the same size that is
placed directly on top of Sheet.1. The two shapes are grouped, creating
Sheet.3, and the group behavior is set to select members first (this is
necessary for various reasons not listed here). Finally, I've defined shape
data for the group.

I would like a double-click to open the group's shape data, but a
double-click is interpreted as belonging to Sheet.2, presumably because it's
on top and members are selected first. Not surprisingly then, setting
EventDblClick=DOCMD(1312) in sheet.2 tries to open Sheet.2's shape data.

I've tried a variety of options including:

1) Creating a user cell in Sheet.3 with this formula:
=DEPENDSON(Sheet.2!EventDblClick)+DOCMD(xxxx)
This fires quite nicely when I double-click on sheet.2. For example, if I
set xxxx to 1005, the Save As dialog appears. However, if I set xxxx to 1312,
the shape data window opens but Visio hangs when I click OK or Cancel. Not
useful.

2) I set the following formula in Sheet.2!EventDblClick
=SETF(GetRef(Sheet.3!FlipX),GetVal(Sheet.3!FlipX))
and set the formula below in Sheet.3!EventXFMod
=DOCMD(1312)
(The first formula is obviously nonsense -- it just sets a cell back to its
orignal value but it succeeds in triggering Sheet.3's shape transform event.)
The result of this pair of formula, however, is that Visio tries to open
shape data for Sheet.2 -- despite the DOCMD(1312) residing in sheet.3.

Am I making this more complicated than it needs to be?

Is there a logical reason why #1 above causes Visio to hang when I use
DOCMD(1312)?

Is there another shapesheet formula that will cause #2 to change focus from
sheet.2 to sheet.3 in order to open the correct shape data?

Finally, although I would prefer to do this in the shapesheet, if I have
sheet.2's EventDblClick set to fire a macro, what would the code look like to
open the sheet.3 shape data?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top