Excel VBA代码,用于使用超链接索引所有工作表名称 - 矩形(按钮排序)

时间:2018-04-18 09:25:40

标签: excel vba excel-vba

您好我正在尝试编写一个VBA代码,它将帮助我使用超链接索引所有工作表名称。但是我不想只是在单元格上写的工作表的名称。我希望工作表的所有名称都是矩形,一个在另一个之下。当您单击其上带有工作表名称的形状时,它将转到工作表单元格A1。 同样在其他工作表中,一个类似的矩形框,表示“返回索引”,链接到索引页面。

是否有人可以帮助我编写这样的代码,因为我在工作簿中有近70个工作表,我很想手动执行此操作。

下面是矩形框的规格:

Sub button()
    ActiveSheet.Shapes.AddShape(msoShapeRectangle, 96.75, 90, 94.5, 21).Select
    Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "Sheet3"

    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6). _
        ParagraphFormat
        .FirstLineIndent = 0
        .Alignment = msoAlignLeft
    End With

    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 6).Font
        .NameComplexScript = "+mn-cs"
        .NameFarEast = "+mn-ea"
        .Fill.Visible = msoTrue
        .Fill.ForeColor.ObjectThemeColor = msoThemeColorLight1
        .Fill.ForeColor.TintAndShade = 0
        .Fill.ForeColor.Brightness = 0
        .Fill.Transparency = 0
        .Fill.Solid
        .Size = 11
        .Name = "+mn-lt"
    End With

    Range("D9").Select
End Sub

Image of the look of the buttons, click here

1 个答案:

答案 0 :(得分:0)

您可以为每个工作表执行一个循环,获取名称并创建您想要考虑名称的按钮...

Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
    Call button(ws)
Next