3

I'm working on a VBA macro to automatically add hyperlinks within a drawing file, so that when a certain word is mentioned in the text, I can link to another page in the drawing.

According to MSDN and Visio's help, a Hyperlink object can be associated with a cell, characters, row, or section object. However, I can't find any way to actually associate a hyperlink with anything but a shape.

So the question is, how can I hyperlink a single word within a paragraph of text in a single shape in Visio?

4

1 回答 1

2

我只熟悉在 Visio 中触发超链接导航的两种方法:

  1. 将超链接添加到形状并单击形状(或从形状的上下文菜单中选择超链接)。
  2. 在单元格公式中添加对超链接 shapesheet 函数的调用。然后进行触发该单元格重新计算的更改将跟随超链接。

我能想到的最好的主意,但不是很好,是:

  1. 确保您的形状是一个组 - 如果不是,请将其转换为组。
  2. 将组的属性更改为 SelectMode=visGrpSelModeMembers1st 和 DisplayMode=visGrpDisModeBack。
  3. 放置一个新的形状,大小和居中在有问题的单词上。使新形状透明(此处部分透明可用于突出显示)。
  4. 将 DblClick 事件的公式更改为“Hyperlink("yourURLhere")”。
  5. 将该形状添加到组中。

现在,双击单词实际上应该涉及双击新的子形状,这将触发超链接。这只有在您的形状被设计为与这个想法一起工作时才真正可行 - 许多现成的形状在这里不能很好地工作,因为第 1 步和第 2 步可能会产生丑陋的副作用。

我希望其他人知道解决这个问题的更优雅的方法。

于 2013-06-26T02:38:39.303 回答