The ShapeSheet is probably the most overlooked part of Visio. The amount of power that you can get by using the ShapeSheet without any programming is pretty amazing. The basic idea is that behind every shape in Visio there is a spreadsheet that defines the shape in terms of its appearance and many other shape characteristics like data, connection points, and events/actions. There is an introduction to the ShapeSheet in the Developing Visio Solutions book and more comprehensive documentation is available in Visio help. Another good place for information on this topic is in the microsoft.public.visio.developer.shapesheet newsgroup.
The ShapeSheet is very similar to a normal spreadsheet like Excel. It is made up primarily of cells and formulas. The formulas perform mathematical and other operations and can refer to other cells. In turn, the results of these formulas drive the shape properties.
To get to the ShapeSheet for any shape, select the shape and go to "Window>Show ShapeSheet." The ShapeSheet window looks like this:
A couple key points about what you see:
One of the best ways to learn about what is possible with the ShapeSheet is to take a look at some of the shapes that ship with Visio. Some intersting ones include "Flowchart shapes" and "Auto-height box" from the Basic Flowchart Shapes stencil, the Rack Diagram shapes, and the Marketing Charts and Diagrams. Drop these shapes out on the page and then view the ShapeSheet.
For the next post, I'll walk through the process of creating a shape from scratch and using the ShapeSheet to give it some interesting characteristics.