Excel如何在每个工作表里插入一个返回目录的连接,该怎样做?
需要添加返回超链接的SHEET页的名字跟首页超链接的名字是一样的,是批量添加哦,不是一个一个手动加公式或者超链接哦 展开
1、首先准备需要插入返回目录按钮的工作簿,打开工作簿,需要确保工作簿有一个目录或者总表工作表,作为返回的对象。如下图所示:
2、点击“开发工具”选项卡,再单击“查看代码”按钮,打开VB代码编辑器窗口。如下图所示:
3、然后在打开的VB代码编辑窗口中插入一个新模块,将以下代码复制到模块中,点击运行
Sub Button()
Dim MySht As Worksheet, MyButton As Button, ShtName As String
ShtName = "目录"'如果不是目录,则改为其他名称
For Each MySht In Worksheets
With MySht
If .Name <> ShtName Then
.Shapes(ShtName).Delete '
Set MyButton = .Buttons.Add(50, 10, 60, 30)
With MyButton
.Name = ShtName '对按钮命名
.Characters.Text = "返回" & ShtName '指定按钮的标题
.OnAction = "backto" '指定按钮对应的宏命令
End With
End If
End With
Next
Set MyButton = Nothing
End Sub
Sub backto()
Worksheets("目录").Activate
[a1].Select
End Sub
4、运行代码以后,最小化代码窗口,返回工作簿主界面,可以看到出了“目录”工作表,其他的工作表都已经自动插入了一个可以返回“目录”的按钮。如下图所示:
Sub Add_Sheets_Link()
For i = 1 To ThisWorkbook.Worksheets.Count
Cells(i + 1, 2).Value = Worksheets(i).Name
ActiveSheet.Hyperlinks.Add Anchor:=Cells(i + 1, 2), Address:="", SubAddress:= _
Cells(i + 1, 2) & "!" & "A1", TextToDisplay:=Cells(i + 1, 2) & "!" & "A1"
Cells(i + 1, 2).Value = Worksheets(i).Name
Next
End Sub
这个执行完在sheet1形成了每个页签的超链接,也很好用呵呵不用我一个一个链了。但是俺说的是,在后续的每个sheet页增加一个【返回目录】按钮,点击可以返回sheet1相应一样名称的单元格,比如在sheet2(sheet2名称为001)的D4单元格增加【返回目录】字样,超链接到sheet1里相应的名称同为001的单元格。这个工作量比较大,要一页一页的加。
还是可以用VBA,编辑以后复制在模块中运行。
Sub Add_Sheets_Link()
For i = 1 To ThisWorkbook.Worksheets.Count
Cells(i + 1, 2).Value = Worksheets(i).Name
Worksheets(1).Hyperlinks.Add Anchor:=Worksheets(1).Cells(i + 1, 2), Address:="", SubAddress:= _
Worksheets(1).Cells(i + 1, 2) & "!" & "A1", TextToDisplay:=Worksheets(1).Cells(i + 1, 2) & "!" & "A1"
Worksheets(1).Cells(i + 1, 2).Value = Worksheets(i).Name
Next
For i = 1 To ThisWorkbook.Worksheets.Count
Worksheets(i).Hyperlinks.Add Anchor:=Worksheets(i).Cells(4, 4), Address:="", SubAddress:= _
"Sheet1!A1", TextToDisplay:="返回目录"
Next
End Sub