Ever have to use Microsoft Visio? Lets learn some guidelines to help you draw shapes and connectors more easily, some useful tricks to set up drawings the way you want, and keyboard shortcuts to work more quickly.
Microsoft Visio is a relatively simple piece of software. It doesn't have the bells and whistles of a hard-core graphics program or drafting program. However, it is quite easy to pick up and learn, works like a Microsoft Office product, and is excellent at making shapes like boxes and connecting them. This makes Visio great for things like organization charts, or website design wireframes. It means it can also work for flowsheet drawings like Process Block Diagrams, Process Flow Diagrams or even Piping and Instrumentation Diagrams if you want to push your luck: you make the shapes of equipment, valves, etc. and connect them with lines representing pipes.
I have not used Visio 2007, but I've had to use 2000 and 2004 a lot in my day. And I've learned a few good tricks that may be overlooked. Some will help you draw neater and more consistent drawings, and some will improve your speed. I will start with the more general, high-level stuff, then get to the nitty gritty for people who are using Visio way too much. 🙂
Using Stencils and Shapes
One feature of Visio is to create stencils: you create this filetype, which can sit as a sidebar for you while you use Visio. Drag and drop shapes you draw into the stencil, name them, and even customize the icon for them. Using this you can build up a library of easy-to-use shapes! Draw a box on an organization chart or heat exchanger on a flowsheet exactly the way you want it, and then add it to your stencil to have it accessible at all times.
You can build yourself a master stencil over time, or you can set one up before you begin a project. If you want a team of people to draw consistent drawings, you really need to outfit them with the same shapes.
Another trick is to make a border around your drawing (with your company logo, Revision block showing who drew and approved the drawings, notes, etc). Group the border, and add that to the stencil. Then anytime you start a new page just pull the border out, position it on your page, and then ungroup the border.
If you do not want to make your own shapes, in newer versions of Visio you can search the Internet for existing shapes made by others.
Use the snap and glue toolbar, and use connectors
Visio lets you draw lines, and then format the lines to add start and end arrows if you want. You COULD use this to draw lines on you drawing. However, a much more powerful and dynamic tool is the connector. (Shortcut crtl+3).
You can place connector glue (visualized as small blue crosses) onto any shape you select with your mouse. Then, once you have two shapes with spots of glue, you can use the connector tool to draw a line connecting them. There are two huge benefits to using the connector tool: 1) The lines will route themselves, taking twists as turns as needed, and they will automatically update the route if you move the objects around. This saves you a lot of micromanagement. 2) You can go to file>page setup>layout and routing and control how the lines intersect. Do you want to use gap when lines cross? Or draw an "arc" jump-over? Some companies are really picky about this! Using connectors, you won't have to manually make these gaps or arc jumps and you won’t accidentally miss one.
A caution though: once you've set connectors, keep an eye on them. Sometimes they will route the lines in idiotic ways. You can drag at the line to shape how it turns. (Aesthetically, a lot of small turns or "doglegs" are considered poor form). A few times I gave up and drew normal lines because it was less work.
I also recommend you toggle the snap and glue toolbar (go to view>tool bars). Here, you get a set of buttons control better how the glue works, and if you want the connectors to do smart things like snap to 90° orientations.
Use the size and position tool for fine positioning
Go to view> size and position. Or, sometimes clicking on position data in the bottom-left corner of the screen works.
This brings up a little box that tells you details like the x-y co-ordinates of your object, and you can type in co-ordinates to move an object. It also shows object angles. I find it useful to force connectors into completely straight lines. (Often the connector will make tiny bends to that you don't want, so you can force it straight by typing an angle like 90°).
Copy-and-paste drawings and Excel tables creatively
One of the nice things about Visio is that, being a Microsoft Office product, you can copy-and-paste other things into it easily.
I see two major benefits: the first is to consider adding drawing files to your Visio files. You can add your company's logo in the corner. Download a little picture of a barge or train and use it on your block diagram to show product being shipped into your plant. (Avoid copyrighted drawings). Add people's faces to the organization chart. etc.
A second major benefit to consider is generating tables in other programs like Excel, and then pasting it into your drawing.
Let me use an example I know well: I am modelling the flowrates, temperatures, and pressures of a process in a special software program. I want to share my results with my clients and teammates. So I draw a sketch of the process. Now how to get the numbers out? I could label each line of pipe with the numbers by hand, but it takes a lot of time and I might make a mistake. Instead, I have my software program spit the data into an Excel table, and I label the output 1, 2, 3, etc. Then I label my drawing with points 1, 2, 3, etc. to link up the Excel table to the drawing. I can either paste the table into my Visio drawing, or hand out my table along with the drawing.
This way, I can automatically generate new tables, saving time and avoiding human error. You could do the same trick with other things. Maybe you generate an equipment list and some key details about each piece of equipment and put it in on the side of your drawing. Or maybe you are simulating stresses and strains on an object, so you label points on the object instead of lines.
Trick using the fill command
You can draw shapes like ovals and rectangles and use the "fill" command to add a colour or a pattern. But what if you want to create a weird shape? For example, in one drawing, I wanted to draw a silo of sand, but the silo had a weird shape and the sand should have a little hill where it is being dropped into the silo. In another drawing, I had an unusual shape of concrete and wanted to use a pattern to show it was concrete.
The trick is to make multiple shapes using the same fill pattern, and stack them on top of each other. For example, you could draw three rectangles and two ovals, rotate the shapes and resize them as needed, and drag them on top of each other to form one giant object. The fill patterns will line up and it will look like one shape. Group the shapes after.
A "cheap" alternative is to just make the fill pattern yourself. Pick something to draw, like little random curvy lines, or little triangle shapes, and drag them all throughout the shape you want to fill. Just make sure to group the object after.
The best Keyboard Shortcuts
Have you ever watched a really good graphics designer or a drafter work with program they know really really well? They are so fast it impresses the heck out of you. How can you get a piece of that skill for yourself? Try these shortcuts:
- Hit crtl+1 to go to the default "selector" cursor and crtl+3 to go quickly to connector lines
- Click on an object, hold crtl, and drag it to copy the opbject
- Hit crtl+pageup or pagedown to go between sheets in the same file
- Creatively use the "group" command to group and ungroup things together before moving them, where it will make your life easier
- Hold in the middle button of your mouse and you go into "scroll mode" like in many other programs. In scroll mode you can move your mouse in a direction and your view moves that way
- Use the mouse wheel to zoom in and out
- If you try to move shapes with the arrow keys on your keyboard, they always jump a certain distance. To reduce the distance moved by arrow keys, zoom in close, and/or hold shift as you hit the arrow keys
- Use crtl+r,l,h,j to rotate objects 90° or invert them along the vertical and horizontal access. (Careful: this can screw up your connectors!)
- Hit F8 to bring up the align window: this lets you "align" objects, like having them all have their bottom edge on the same floor, or centring them all vertically. You can drag the mouse or hold control and click, to select multiple objects. The first object (in green) is the control object, the secondary objects (in blue) will align themselves with the green object. The way they align depends on the options you select in the align window.
- This trick works in all Microsoft Office programs: Hit alt to jump to the main toolbar at the top of the screen. (File, edit, etc.) Notice the little underlined letters? You can now type one of those letters to bring down that menu. Now you’ll see more underlined letters of sub-options in the menu. You can follow this line of reasoning and learn how to automatically bring things up. For example, alt-O-L brings up format>lines, which is useful if you need to format your lines. I learned this trick because of how many times I had to add an end arrow to lines.
That was a very long post, which I hope helps some of you!
Lastly, a request to help your fellow readers. Post in the comments if anything that I've said changes or no longer applies in Visio 2007. Or if you know how to do the keyboard shortcuts on a Mac. Also, please post if you know of any good open source (i.e. free) alternatives to Visio, and if the tips above apply to any of these free programs.
Updates to this post:
2009-08-19 - Improved the clarity of many sentences.
2009-10-26 - Just found out that Visio 2007 Professional Edition has extra tools and templates for engineering drawings, including Process Flow Diagrams and Piping & Instrumentation Diagrams. But not Visio 2007 Standard Edition. Also, it seems that you can connect your drawings to databases to provide things like real-time status reports.