excel 根据定义的名称选择形状并生成指向特定行的超链接

iyfjxgzm  于 2023-06-07  发布在  其他
关注(0)|答案(1)|浏览(194)

我有一个宏,它在单元格A2中插入一个具有定义名称的形状,在形状的相邻单元格(单元格C2和C4)中,宏还插入插入形状的定义名称和表示工作表2上行号的数字。
该形状稍后将移动到同一工作表中的另一个位置,因此它不会停留在单元格A2中。我也将添加更多的形状与宏观以上。
我需要的是使每一个形状,得到插入到一个超链接,使用户在同一工作簿中的表2的右行。
因此,我需要编写代码来选择名称位于单元格C2中的形状,然后将其转换为连接到列A和右侧行(您可以在单元格C4中看到其编号)的超链接
下面是我从录制宏中得到的代码

' hyperlink Makro

ActiveSheet.Shapes.Range(Array("A20_Provpunkt_>Fa")).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection.ShapeRange.Item(1), Address:=""

这是我希望它如何运作的一个例子

ActiveSheet.Shapes.Range(Array("**Value from Cell C2**")).Select
ActiveSheet.Hyperlinks.Add Anchor:=Selection.ShapeRange.Item(1), 
Address:=**Rownumber that you get from Cell C4**

接下来我可以尝试什么?

myzjeezk

myzjeezk1#

将形状上的超链接添加到表2的A列,并使用C4的行值

Sub AddHyperlinkOnShape()
    Dim ws As Worksheet
    Dim shapeName As String
    Dim shape As shape

    Set ws = ThisWorkbook.Worksheets("Sheet1")
    shapeName = ws.Range("C2").Value
    Set shape = ws.Shapes(shapeName)

    ws.Hyperlinks.Add Anchor:=shape, Address:="", _
        SubAddress:="'Sheet2'!A" & ws.Range("C4").Value, _
        ScreenTip:="This is the way"
End Sub

相关问题