在Excel中将macros指定给文本

我有一个垂直框列表

在这里输入图像说明

,每个项目都有不同的超链接添加到它

我已经看到了通过“Followhyperlink”将macros指定到超链接的方法,并在那里调用macros,但在我的情况下,它是多个超链接和多个macros,不知道是否可以完成。

现在,我需要为每个超链接添加不同的macros,这是可能的吗?

由于您无法通过右键单击SmartArt并单击“ Assign Macros ”来指定macros ,您可以在每个对象上放置一个形状,并对其进行格式化,使其不具有线条或颜色。 一旦你这样做,然后分配“ 分配macros ”将提供给你。 看这个屏幕截图。 此外,不要将文本添加到SmartArt,而是将文本添加到放置在SmartArt顶部的每个Shape。

在这里输入图像说明

然后这个…

在这里输入图像说明

在这个macros中,可以使用Application.Caller ,然后检索该形状的文本。 基于文本,您可以执行特定的任务。 例如

 Sub Button1_Click() Dim shp As Shape Set shp = Sheet1.Shapes(Application.Caller) Select Case shp.TextFrame2.TextRange.Text Case "Data Add on Y/N" '~~> Do Something Case "Product Data Last" '~~> Do Something ' '~~> And So on ' End Select End Sub