Visio the Blog

Visio Rules! Check out David Parker's new book - Business Process Diagramming And Vaildation

Non Standard Timelines

One of the long time requests for the Visio timeline is to support something other than standard dates and times. Items that are not related to the standard concept of time.

This can be accomplished by NOT using date formats in the shapes. Each shape is grouped and has a top level shape that contains a User Property (or two) of the form User.xxxMask that contains the format to be used for the dates or times. This is controlled by the Timeline menu, but the format can be changed to use something more generic.

Dates are internally represented by a floating point number with the decimal portion representing the time of day. So to get a generic numeric date, the format has to be changed so the “date” is displayed as a number. This can be done by editing each shape OR editing the masters on the stencil. Of course, the standard caveat applies. Backup the masters! A better solution is to create a copy of the stencil and apply the modifications to it.

So modify the masters so the User.xxxMask cells contain “n” rather than {{M/d/yyyy}}.

 

Posted: Oct 27 2010, 08:46 AM by visio | with no comments
Filed under: ,
Where is Waldo?

With Visio 2010, Visio has now joined the other core Office apps and now supports the ribbon. With the old menus, I ended up turning almost all of them on and wasting screen real estate. So in a way, I like the new ribbon. Of course, the first question asked always starts with, “where is the button for…”. There is a download from Microsoft that will help you navigate, but the Visio team was prepared for questions about the location of commands. If you click on the File Ribbon and choose Options and then Customize ribbon, you are presented with choices for changing the ribbon. In the drop down box below “choose commands from: “ select “All Commands”. Now if you scroll down the list of commands, you should be able to find the command you are looking for. If you hover over the command, you will be presented with the actual location of the command on the ribbon. If you start from the top of the list, do not get discouraged, the first none commands are “Not in the Ribbon”

Don’t forget to check out the forums for free help with your questions. If the volume of questions is sufficient in the Answers forum, may be w will get a forum to ourselves rather than sharing with Access, Project and InfoPath.

Posted: Aug 08 2010, 07:16 AM by visio | with no comments
Filed under: ,
Review of David Parker's new book

Visio is almost twenty years old and for the last few versions, Microsoft has been extending Visio's capabilities beyond being the standard for drag and drop diagramming applications. In the beginning, Visio lead the way with it's ability to quickly create business diagrams with intelligent shapes. Rather than worrying about the details of drawing shapes, the user could concentrate on how the shapes interacted. With Visio 2010, Microsoft laid the groundwork for validating the diagrams. As a new feature, Microsoft made sure that the validation process was well defined, but only created basic rule sets.

With this book, "Microsoft Visio 2010 - Business Process Diagramming and Validation", my fellow Visio MVP, David Parker has explained how the new validation feature works and provided tools for analysing and creating your own rules. This is more than a rehash of Microsoft documentation, he has worked with the people who created the validation feature to make sure the book contains a good overview of the rule creation process so that anyone can create their own validation rules. The book walks you through the creation of some dot net programs to analyse rule sets and other programs for actually implementing some of the rules. It also provides some good background into the Visio object model and the Visio Shapesheet so that developers new to Visio are not totally lost. The examples David provides make a good starting point for rule developers.

The 314 pages of this book are well written and provide a good insight into a new and very useful feature of Visio 2010. Microsoft will be embellishing this feature in future versions, but for those who can not wait and need to create their own rules, this is the book.

Posted: Aug 05 2010, 01:43 PM by visio | with 1 comment(s)
Filed under: , ,
Using Custom Property Lists

When you have a shape with a Custom Property/Shape Data List you may want to refer to it from within the shapesheet or an associated shapesheet. The first inclination would be to do a string comparison within the test. My preference is to create a User cell that uses Lookup to convert the text into a numeric value.

So for a list named Relation, the Shape Data row would be:
Name:   Prop.Relation
Type:   1
Format:   "Hostile;Close;Distant"  
Value:   =INDEX(1,Prop.Relation.Format)

So what would be in the Value of the User Property cell User.Relation_nbr? The LOOKUP function would need the string to search for (which is conveniently located in Prop.Relation) and a list to search through. The Shape Data conveniently provides that in the Format cell. So the newly created User Property cell would be.
Name:   User.Relation_nbr
Value:   Lookup(Prop.Relation,Prop.Relation.Format)

So there is no chance the comparison will be done against a misspelled text string because all that information is contained within the Shape Data row and all the comparisons will be numeric. If you do need the chosen text from the list, then you can use the Shape data value.

I am working on a set of Genogram shapes and the various shapes require text the use can understand, but the shapesheet is easier when it deals with numeric values.

 

I Need Help!

This month, the Microsoft newsgroups were closed, but there were no clear cut direction for continued support. Other than announcements of their closing, little effort appears to have been done to highlight the new forums as the place to go for Visio support.

In the place of the thirteen Visio newsgroups, Microsoft has provided three forums:

http://social.technet.microsoft.com/Forums/en-CA/visiogeneral/threads

http://social.msdn.microsoft.com/Forums/en-US/visiogeneral/threads

http://social.answers.microsoft.com/Forums/en-us/addbuz/threads

There is no clear cut definition as to which one to use, but it appears that they are for general user questions and not for Visio developers. On the Answers forum, the Visio questions are buried in a forum shared with other Office products. Compared to the newsgroups, the volume of traffic is way down. Whether that is due to people having a hard time finding the forums or that the forums do not appear to be as easy to use as the former newsgroups is hard to tell. With the old newsgroups, it was easy to see the new posts and what has been read.

There is also a Microsoft forum for VSTO for some of the Visio questions, http://social.msdn.microsoft.com/Forums/en-US/vsto/threads, but there does not appear to be a forum for developers using VBA or creating shapes.

Only time will tell whether the Microsoft replacement to the newsgroups will adequately support the Visio community.

So what other Q&A resources are available for Visio users?

  • 1. Fellow MVP, Chris Roth, has an excellent forum at his Visio Guy website. http://www.visguy.com/vgforum/
  • 2. Visimation did have forums, but they are now closed.
  • 3. Tek-Tips have had a Visio forum for a while, but traffic is very low. To give you an idea of how low, I am the top poster and I only have ten votes. In other forums, the top poster has several thousand votes. http://www.tek-tips.com/threadminder.cfm?pid=172

 

Posted: Jun 27 2010, 12:12 AM by visio | with no comments
Filed under: , ,
Can we have a Word?

Even though the adage is "A Picture is Worth a Thousand Words", sometimes it is useful to supplement a Visio drawing with text. For simple reports, Visio has a Reports feature that will produce tables of information, but occassionaly I want something more. For example, Visio does not have a feature to compare what is different between two drawings, so I have created a routine that will generate a very verbose Word document (think Print ShapeSheet on steroids) that contains minute details of the drawing(s) and then used Word's Compare Document feature to highlight the changes.

In the past I have written directly to the Word object model from Visio, but this tended to be painfully slow and would occassionally die (or be comatose). This was to be expected because the verbose Print ShapeSheet could end up being over two hundred pages long.

The next option was to just write a plain text file, but I missed the readability of having a formatted document, even if the formatting was just headers and page breaks. So I would intersperse the text with markers that would indicate the headers and where the page breaks belonged. I could then let Word open the text file and then run a macro to format the headers, add page breaks and remove extraneous lines. I did find that I needed to save the Word document before running the macro because running the macro against a raw text file was extremely slow.

At the first Microsoft Visio summit, my fellow MVP Chris Roth gave a demonstartion of how little XML code you needed to create a Visio drawing. I tried something similar with Word XML, but was never able to get an acceptable minimal set of XML tags. So creating an XML file that Word could consume was not a viable solution.

With Word 2007 and Excel 2007 came a new file format, a zipped directory of XML files. The OOXML format looked promising, but there were still way to many hoops to jump through to get a simple Word document.

Now with the release of the OOXML SDK 2.0, the actual creation of a Word docment is relatively simple. So if you need a way to create a Word document from Visio take a look at

How to: Create a Word Processing Document by Providing a Filename http://msdn.microsoft.com/en-us/library/ff478190.aspx

Posted: Jun 24 2010, 06:33 PM by visio | with no comments
Filed under:
PowerPoint on a Zune HD

Though this is not really Visio related, I would like to talk about the Zune HD I acquired in February. So far I like the device, but as an MVP I cannot keep my mouth shut when it comes to talking about ways to improve.

The Zune designers for the desktop software should take a look at the Data Graphics in Visio. The podcast collections could be improved by adding a Data Graphic like feature  to the podcast labels to indicate if it is to synced, how many times and how many podcasts are kept. The current method required you to select a collection and then click the settings button.

One of the features of PowerPoint 2010 is that you can save a presentation as a WMV file. When the file is added to the video collection on the Zune  HD, the forward and backward buttons will take you to the transition point on the next or previous slides in the presentation. This makes for a very nice portable PowerPoint presentation device. Of course, you have to obey the standard presentation rules and avoid busy slides. If the slide is not readable on the Zune HD it is definitely too busy for a regular presentation.

Posted: Apr 27 2010, 04:13 PM by visio | with no comments
Filed under: ,
Visio RULES!

With Office 2010, the Visio team has added some nice new features to Visio 2010. One of the new features is the ability to apply rules to a Visio diagram. As a teaser, the team has created some rules for flowcharting and laid the ground work for users to create their own rules.

Fellow Visio MVP David Parker was intrigued with this new feature that he researched it and built on this ground work and created a set of tools to make it easier to take advantage of this new capability within Visio 2010. There was enough material there for a book. In fact, he actually wrote the book on it. Currently the book is in the hands of the publishers and when it is released, it has a place on my shelf between my dog eared copies of Graham Wideman's books and Bonnie Biafore's Visio Bibles, next to David's previous book on Data Visualization.

David does an excellent job covering the techniques needed to create rules and provides some good examples on how to create them. Rather than just providing tools, he actually walks you through the creation of these tools. He has also created a new website www.VisioRules.com which he plans to use as a clearing house for information and other things about the new rules feature. Currently it is only a place holder, but once it is fully up and running, it will be another website worth bookmarking. 

So it sounds like we have a new slogan. It may be that "Dot Net Rocks" but "Visio RULES!"

How do I change skin colour?

I have a few Google alerts set up to let me know if the word Visio is mentioned on the internet. I am always interested in new stencils for Visio and this has proven an effective way of finding them. Most of the time, the hit has nothing to do with the product Visio or it was a link to a download site for Visio or one of the books written about Visio. Today was slightly different, there was a link to a blog that said "In Visio 2007, i want to change skin color, but I don't know the formula's - does anybody know?", but no answer.

Thanks to the Visio devs, it is quite easy (almost). They were nice enough to provide a User cell (similar to a custom property/shape data, but hidden) called User.SkinColor where you can set the skin colour. For the Accounting shape in the Workflow stencil of Visio 2007, that value is HSL(21,165,128). HSL stands for Hue, Saturation and Luminesance and is a similar means for setting a colour as RGB.

Of course, the tricky bit is working out what HSL values correspond to different skin tones and assigning a politcally correct name to it. I can understand why the Visio devs would not want to spend days arguing over the correct skin tone of someone from Redmond.

The use of the HSL function is a good choice because it provides a good range of skin tones by just modifying the value for luminesance. So it would be possible to create a simple piece of VBA code to display a slider that would change the user cell User,SkinColor of the selected shape (or shapes) from a value from 0 to 240.

 John... Visio MVP

Posted: Oct 24 2009, 03:23 PM by visio | with no comments
Filed under: ,
A blast from the past

Debra Dalgleish, one of the Excel MVPs mentioned an old episode of the Computer Chronicles on Facebook and provided a link.

It did not take me long to find an appropriate link for the Visio crowd. The show is about Windows 95 and OS2, but at 16:50 to 20:00 is an intro to Visio 3.1

http://www.archive.org/details/Windows4

Nice shirt Ted!

 

 

Posted: Oct 16 2009, 02:39 PM by visio | with no comments
Filed under: ,
Revision Dates per Page

One of the posters in the newsgroup was asking about providing a revision date on each page of a Visio document and this is what I came up with. The only dates that are associated with a Visio drawing are done at the document level, so another apporach is necessary.

To create a date stamp at the page level, add a custom property/Shape Data to the pagesheet for each page. This property can then be changed automatically when the page is altered. Since the property is updated automatically, the property will also be created if it does not exist.

Private Sub Document_BeforeSelectionDelete(ByVal Selection As IVSelection)
UpdateDateReviewed
End Sub

Private Sub Document_PageAdded(ByVal Page As IVPage)
UpdateDateReviewed
End Sub

Private Sub Document_ShapeAdded(ByVal Shape As IVShape)
UpdateDateReviewed
End Sub

Private Sub Document_ShapeExitedTextEdit(ByVal Shape As IVShape)
UpdateDateReviewed
End Sub

Sub UpdateDateReviewed()

Dim vsoShape As Visio.Shape
Dim intPropRow As Integer

Set vsoShape = ActivePage.PageSheet

If vsoShape.CellExists("Prop.DateRevised", False) = False Then
    intPropRow = vsoShape.AddRow(visSectionProp, visRowLast, visTagDefault)
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsLabel).FormulaU = """DateRevised"""
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsValue).RowNameU = "DateRevised"
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsType).FormulaU = "5"
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsFormat).FormulaU = ""
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsPrompt).FormulaU = ""
    vsoShape.CellsSRC(visSectionProp, intPropRow, visCustPropsValue).FormulaU = ""
   
End If

vsoShape.Cells("Prop.DateRevised") = Format(Now(), "00000.00000")

End Sub

 

From Adobe Illustrator to Visio

One thing that got me hooked on Visio from the beginning was that you were not limited to the shapes that were supplied by the product, You could create shapes from scratch, modify existing shapes or wrap an image from any source into a Visio shape. So, I am always on the hunt for new shapes that are available on the internet.

Recently, I came across a set of well made shapes and was able to get in touch with the creator. Though the shapes looked good, they did not have any of the smarts that can be associated with Visio shapes. The Visio shapes were just foreign images that could not be changed or coloured. The shapes were originally created in Adobe Illustrator and imported into Visio. I tried using other export options from Illustrator, but none allowed me to ungroup the shapes in Visio so the shape can be disected into individual elements that be recombined.

Thanks to Enric Mañas, a PowerPoint MVP, I found out that it is possible to disect the shape by using PowerPoint. The file needs to be first saved as an EPS in Illustrator. The EPS file is then inserted into a new PowerPoint slide and then saved as a WMF file. The WMF file is then inserted in to a Visio drawing and this new shape can then be ungrouped.

So if you need to manipulate a shape created in Adobe Illustrator, use PowerPoint to convert an EPS file to a WMF file.

Multiple copies while Duplex printing

Visio has a problem with duplex printing.

If you ask for multiple copies while duplex printing, you only get one copy. This is rather annoying, but the problem is not with duplex printing. The issue is with the collate option. You can duplex print a Visio document and request mutiple copies and your document will print the correct number of pages, only if you do not select collate. Of course, the pile of paper generated is useless. What is printed on the front and back of the first piece of paper is two copies of page 1.

There is a knowledge based article http://support.microsoft.com/kb/924114 but that indicates that the issue is that collate is not checked. The only workable solution is to set the copies to 1. Sounds like a Henry Ford answer.  You can get any colour you like, as long as it is black. You can print as many copies as you like as long as the number of copies is 1.

Update: This is fixed in Visio 2010 (almost). Though the printing is correct, it appears that you get an extra page if you duplex a document with an odd number of pages. An even number of pages prints fine with no extra page.

Posted: Sep 21 2009, 01:55 AM by visio | with no comments
Filed under: , ,
Something New for Visio 2010 - Containers

Have you ever wanted to add an area around a group of shapes? For example, you want to identify a group of computers that belong to the draughting department? Simple, you just draw a shape around a group of shapes, but the problem arises when you want to expand or shrink the shape that encloses the group of shapes.

With Visio 2010, is a new concept called containers that will automatically stretch or shrink depending on the shapes contained.

MSO Shapes and Visio

Though not directly Visio related, I have been playing with converting the MSO shapes used in Word, Excel, PowerPoint and Publisher into Visio shapes. The shapes are similar to Visio shapes and include control handles. So far I have created a Visio stencil for the shapes and have added some of the smarts into the shapes. I have been able to create Visio drawings from MSO shapes in PowerPoint and transfer some of the settings for the shapes. The fun has been getting around the MSO*mixed types. (It basically indicates that you have to go down another path to search for your information)

 

One thing I noticed is that five of the MSO shapes return the wrong shape type. They are:

110 

msoShapeLineCallout2

109

msoShapeLineCallout1

117 

msoShapeLineCallout1NoBorder

113

msoShapeLineCallout1AccentBar

118 

msoShapeLineCallout2NoBorder

113

msoShapeLineCallout1AccentBar

121 

msoShapeLineCallout1BorderandAccentBar

109

msoShapeLineCallout1

137 

msoShapeBalloon

106

msoShapeRoundedRectangularCallout

 

Posted: Aug 22 2009, 04:16 PM by visio | with no comments
Filed under: ,
Visio 2010 - Developer Mode

With Office 2007, the main apps introduced the ribbon and with Office 2010, Office introduced the ability to customize the ribbon. Since the ribbon was a major shift in the UI experience, it made sense that  only the key apps should "test the waters" and the other apps should wait till the next release. It was basically a "too many cooks spoil the broth" scenerio.

With Visio 2010, Visio acquired the Ribbon AND ribbon customization.  One problem with menus in Visio 2007 was their placement was not optomized and it was possible to leave gaps. So the introduction of the ribbon meant a better placement of the buttons and only displaying the relevant ones. (Of course, relevancy is subject to interpretation)

With the introduction of the ribbon, there were some major changes in the UI. One noticable one is the removal of the "Use Developer Mode" checkbox in the Options menu. The user can now directly customize the ribbon to enable the buttons that were added by the old "Use Developer Mode" option checkbox.

There is an alternate way to get to code. On the View tab, the last group is Macros. You can then access or create VBA macros.

VRU / IVR

A recent post in the newsgroups asked about a stencil for IVR. IVR - Interactive Voice Response - is the system we have known to love as the automated telephone system - Press 1 for customer service rep, 2 for sales and so on. A VRU Voice Response Unit is the computer that runs the software.

In a past life I maintained an IVR system for a bank and of course, documented it with Visio. Except for a few specialized shapes, most of the shapes were from the flowchart stencil. With Visio 2007, some of the workflow shapes could have come in handy. So the specialized shapes I used were:

A Decision Box - This box contained the prompt presented the user and ten connection points to the possible responses ( 0 to 9)

A CSR shape - Customer Service Rep (aka operator) This was just a piece of clipart of an operator with a headset. Since this was a common destination when the user pressed 0, it was placed in many places on the flowchart. (I wonder if I can talk Visio Guy into creating one of his people shapes for this?).

A manframe shape - The actual VRU was an OS2 box, but all the data was stored on a mainframe.

A fax machine - One of the features we added was the ability to have your bank statement faxed to your fax machine.

So I will try and put a VRU / IVR stencil together and post it on the Visio MVPS website. If anyone can come up with any additional shapes that would be useful for the stencil, let me know.

Posted: Aug 04 2009, 04:54 AM by visio | with 1 comment(s)
Filed under: , , ,
Polar Array - Part 2

It has been almost two years since I blogged, so it is time to dust off the blog.

Today in the newsgroups someone asked about using the Polar Array VBA sample from the Visio MVP website, but rather than place a specific shapes multiple times, arrange the shapes that are selected.

As usual, the original credit goes to Chris

Sub PolarArray()
' by Chris Roth
Dim shp As Visio.Shape, shpObj As Visio.Shape, celObj As Visio.Cell
Dim iNum As Integer, i As Integer
Dim dRad As Double, dAngStart As Double, dAng As Double
Dim x As Double, y As Double
Dim VsoSelect As Visio.Selection
Dim VsoShape As Visio.Shape

' obtain the shape to be distributed
Set shp = Visio.ActiveWindow.Selection(1)

Const PI = 3.14159265358

Set VsoSelect = Visio.ActiveWindow.Selection

If VsoSelect.Count > 1 Then
    iNum = VsoSelect.Count
    dRad = InputBox("Enter the radius for the polar array in inches:", "Polar Array")
    dAngStart = InputBox("Enter the first angle in degrees (0 deg = 3 o'clock):", "Polar Array")
    dAngStart = dAngStart * PI / 180 'Convert to radians
   
    dAng = 2 * PI / iNum
    
    For i = 1 To iNum
    x = dRad * Cos(dAngStart + dAng * (i - 1)) + 4.25
    y = dRad * Sin(dAngStart + dAng * (i - 1)) + 5.5
    Set VsoShape = VsoSelect(i)
'    Set shpObj = Visio.ActivePage.Drop(shp, x, y)
    VsoShape.Cells("Pinx").Formula = x
    VsoShape.Cells("piny").Formula = y
    ' rotate the shape - This only makes sense if this is a group of chairs around a table
'    Set celObj = VsoShape.Cells("Angle")
'    celObj.Formula = Str(Int((i - 1) * 360 / iNum)) + "deg."
    Next i
   
Else   ' if only one shape is selected, then
    iNum = InputBox("Enter the number of items in the array:", "Polar Array")
    dRad = InputBox("Enter the radius for the polar array in inches:", "Polar Array")
    dAngStart = InputBox("Enter the first angle in degrees (0 deg = 3 o'clock):", "Polar Array")
    dAngStart = dAngStart * PI / 180 'Convert to radians
   
    dAng = 2 * PI / iNum
   
    For i = 1 To iNum
    x = dRad * Cos(dAngStart + dAng * (i - 1)) + 4.25
    y = dRad * Sin(dAngStart + dAng * (i - 1)) + 5.5
    Set shpObj = Visio.ActivePage.Drop(shp, x, y)
    shpObj.Text = i
    ' rotate the shape
    Set celObj = shpObj.Cells("Angle")
    celObj.Formula = Str(Int((i - 1) * 360 / iNum)) + "deg."
    Next i
End If
End Sub

Will that be Metric or Imperial?

For a long time Visio has supported stencils and templates in two different measurement system; Imperial (US) and Metric. Each template had a US version and a Metric version. So why two templates? The US templates were in in, ft, yds and the other imperial units and the Metric templates were in mm, cm, m and the other metric units. There was also an isue of the physical page size; Some of the standard sizes for the US are letter, legal and tabloild while the metric sizes were the A format sizes like A3 and A4.

So is it possible to have a single template that will handle both Imperial and Metric units and paper sizes? Yes, with a few minor changes, you can combine both units.

One method to do this is to add a user defined cell to the document and use that variable to determine the system to use. To add a document level user defined cell, right click the top entry in the Drawing Explorer and select Show ShapeSheet or right click the drawing surface outside the drawing and hold the shift key while selecting Show ShapeSheet. If you do not hold down the shift key, you will get the shapesheet for the page. Add a rowl to the User Defined Cells section and name it something like UseMetric. Use a value of 0 for Metric units and non zero for Imperial units.

On each page set the PageHeight, PageWidth, PageScale and DrawingScale with a formula like.

For Page Width set the content to:    = IF(TheDoc!User.UseMetric=0,210mm,8.5in)

As you change the value of UseMetric, the PageWidth (and other qualities) will reflect the selected units.

This will give you a document that will switch between a letter size drawing in inches and an A4 drawing in mm.

The next step would be to add unit agnostic formulas to your shapes.

If you already have background pages created in Imperial units and metric units, rather than trying to merge the two with formulas based on TheDoc!User.UseMetric, combine the two background pages by applying each page to a layer and use TheDoc!User.UseMetric to control the visibilty of each layer.

Posted: Sep 21 2007, 09:23 PM by visio | with no comments
Filed under: , , ,
Whose your father?

Visio does provide an option for printing shapesheets but it is wordy. In the past I have used Excel to sort and manipulate the information, but this is time consuming and really does not give me everything I want. One thing that was not easy to do was to find out whether a shapesheet was part of a group and if so, which group it belonged to. Being Visio, this is not a big problem. The object model is exposed and it is possible to write your own version of the shapesheet print Add-in with a routine to show the lineage of a shapesheet. 

Given a Visio shape, this function will return a string that lists its' ancestors. 

Private Function Heritage(shpObj As Visio.Shape) As String

Dim Finished     As Boolean
Dim tmpName   As String
Dim tmpString   As String

tmpName = shpObj.Name
tmpString = tmpName

Finished = False
Do While Not Finished

    If ActivePage.Shapes(tmpName).Parent.Type = visTypeGroup Then
        tmpName = ActivePage.Shapes(tmpName).Parent.Name
        tmpString = tmpName + " " + tmpString
    Else
        Finished = True
    End If
   
Loop

Heritage = tmpString

End Function

This sample code will eventually make it's way over to http://visio.mvps.org/VBA.htm

Posted: Jun 03 2007, 10:03 PM by visio | with no comments
Filed under: ,
More Posts Next page »