If you actually read the articles on Visio Guy, then chances are you have braved the world of the Advanced User.
This might have involved creating Shape Data fields, linking those fields to text, creating a custom Data Graphic or, *gasp*, even venturing into the ShapeSheet.
If you’re one of these types, you’ll want to consider running Visio In Developer Mode…
Update: things have changed since Visio 2007. If you’re using Visio 2010 or newer, check out How to Show the Developer Ribbon Tab (and Why).
So here are the reasons to turn on Developer Mode. For those who need them, the details will be discussed afterwards:
- You’ll get the Show ShapeSheet in the right-click menu
- The check box for “Open each ShapeSheet in the same window” is right under “Run in developer mode”, so check it while you’re in the dialog.
- The Format > Style menu shows up (Visio 2007)
- The Format > Define Styles menu shows up (Visio 2007)
- The Format > Special menu shows up (Visio 2007)
- The Shape > Action menu shows up (Visio 2007)
- You won’t have to ask; “Where are the menu items listed in 3-6?” every time I mention them in a Visio Guy article.
- You’ll be able to find out Shape IDs using Format > Special. This will allow you to make nifty Smart Shapes that use cross-sheet formula references.
- You’ll feel like a Developer!
How to Turn On Developer Mode
It’s simply a matter of going to the Tools > Options menu:
Then browsing to the Advanced tab:
You’ll find “Run in developer mode” right at the top of the dialog. Give it a check.
While you’re in this window, you’ll also want to un-check “Open each ShapeSheet in the same window”. If you do any ShapeSheet work that involves referencing cells in different shapes, this option will drive you absolutely mad. Turn it off. Turn it off!
#1 Show ShapeSheet in Context Menu
Once you’ve activated developer mode, you can then simply right-click on any shape, or even the page to get at the ShapeSheet. The very top item in the context menu will now be: Show ShapeSheet!
#2 Turn off Re-use of the ShapSheet Window
While you’re in the Advanced tab of the Options dialog, you can un-check the option right under developer mode. It says: “Open each ShapeSheet in the same window”
This option attempts to keep the user-interface streamlined and clean. With this option checked, you will only be able to show one ShapeSheet window at a time. That is, every time you choose “Show ShapeSheet”, the same sheet window will get re-used!
I personally don’t like this mode, because I usually want to see multiple ShapeSheet windows. Often, I am working with a sub-shape that needs to reference User-cells or Shape Data in the parent group’s ShapeSheet.
It’s simply easier to have the group’s ShapeSheet and the sub-shape’s ShapeSheet visible at the same time, like this!
#3, #4, #5, #6, #7 Menu Items Re-appear
Starting with Visio 2007, certain menu items get hidden when you’re not running in developer mode.
These include three items under the Format menu:
- Define Styles…
Under the Shape menu, you’ll also get the Action item. But you normally right-click shapes to activate their Actions anyway, so this isn’t really a big deal.
#8 Get Shape Names and IDs
Format > Special is of particular importance, because it shows you the ID and Name properties of shapes. ID and Name are very useful in building cross-sheet references in the ShapeSheet.
For instance, if I want one shape to always be as wide as another, I can enter a ShapeSheet formula that looks like this:
Width = Sheet.46!Width
Where 46 is the ID of the other shape. The Format > Special dialog is the easiest way to find out what the ID of a shape is.
This is what the Format > Special dialog looks like:
You can see the ID field at the top. You can also give a shape a nicer name, like “3 Way Valve”. Then you could reference the shape in formulas using either the ID or the name, i.e.: Width = Sheet.46!Width or Width = ‘3 Way Valve’!Width.
(Note: you can only use the Name field at the same level of grouping – within the same scope, so to speak. So a sub-shape can’t reference its parent using the name-reference, it has to use the Sheet.ID form)
#9 You are Now Cool!
…at least in the eyes of the Visio Community!