Having shape data reference other shape's data automatically upon creation

Started by visioquest, January 05, 2017, 07:13:42 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

visioquest

Hi. I have Visio Professional 2016 and am making a "cause and effect" (or "fishbone") diagram out of arrow shapes and rectangle shapes. (I made it in inferior software as a simple noninteractive chart and am remaking it in visio. I considered remaking it out of arrow shapes with text boxes at the base, but I have trouble formatting and orienting the text boxes and data graphics in Visio without separate rectangle shapes.)

I have a few questions about how to do what I am trying to do:

1)

I would like to format it so that the properties of each arrow match the properties of its associated rectangle. For example, I am coloring each rectangle based on the value of data associated with it. I want the arrow associated with that text box to always be the same color as its rectangle (and the color of the rectangle will change based on the value of the data).

This is a simple chart so I can make it by giving one rectangle and one arrow the appropriate (blank) variables and then copying and pasting them onto the page, labeling the rectangles by copying and pasting the first column of my excel sheet, and then mass importing Excel data that corresponds to the label text.

What I would like to do is somehow use something like concatenate to, in the arrow shape's shapesheet, make all of its data values based off of the proper rectangle. I can copy and paste my master arrow+rectangle combination so every arrow has a shape name ending in an odd number and every rectangle has a shape name ending in an even number. So the values of each variable in each arrow should be the value of that value in the shape that is one number higher. So, variable Var1 in arrow.53 should have the value of Var1 in rectangle.54.

So I am trying and failing to make an equation that takes the name of the shape (e.g. "arrow.53") cuts off the base word leaving only the number ("53"), adds one to that number, and puts it on the end of the word "rectangle." (to make "rectangle.54") so that the value of every variable in arrow.53 can simply be the value of that variable in rectangle.54.

And the same for the other hundred arrow-rectangle pairs, all automatically renumbered when I recopy and repaste the master shapes.

~~~~~~~~~~~~~~~

2)

If at all possible, could I make the values of a shape dependent on the values of the shapes glued to it? It would be convenient if each "downstream" arrow simply took on the combined values of the arrows that point to it (in which case I would make the downstream rectangles' values dependent on the values of the arrows).

This would need to be one way: the downstream arrows take the values of what's pointing to them from upstream, but upstream arrows take values from arrows more upstream or the linked excel data.

~~~~~~~~~~~~~~~

3)

If the above is not feasible, instead of having all these calculations in the shapesheets, is it possible to have a connector transfer all values? I would still have to create a new connector between every arrow and every arrow it points to, but even that would be easier than typing all the values into the shapesheet by hand.

~~~~~~~~~~~~~~~

Thank you in advance for your help!

wapperdude

Don't think this is possible without some code.  Shapesheet functionality is inadequate for this task.

With code you can determine what the arrow is glued to, then set the arrow color to match rectangle.

Wapperdude
Visio 2019 Pro