在工作簿中有许多工作表时,我们可以创建一个单独的工作表当作索引页,在其中创建到每个工作表的链接,就像目录一样,不仅方便查看工作簿中的工作表名称,而且单击时可以直接到达指定的工作簿。同时,在每个工作表中创建一个回到索引页的链接。使用一小段VBA代码就能实现。
功能
在当前工作表(作为索引页)中创建所有其它工作表的链接,并在各个工作表中创建对索引页的链接。
用途
为工作簿创建一个索引页后,可以在该索引页中方便地定位到指定的工作表。并且在每个工作表中有返回索引页的链接,可以方便地返回到索引页中。
程序代码
代码语言:javascript复制Sub IndexIt()Dim Ws As WorksheetDim WsInd As WorksheetDim lStartRow As LongDim lStartCol As LongDim sBackRange As String sBackRange ="A1" '<返回到索引页>链接的位置,可根据需要修改 lStartRow = Selection.Row lStartCol =Selection.Column Set WsInd = ActiveSheet '添加链接 For Each Ws In Worksheets If Ws.Name <>WsInd.Name Then WsInd.Hyperlinks.Add WsInd.Cells(lStartRow, lStartCol), "","'" & Ws.Name & "'!A1" WsInd.Cells(lStartRow, lStartCol).Value = Ws.Name lStartRow =lStartRow 1 '添加返回索引的链接 Ws.Hyperlinks.AddWs.Range(sBackRange), "", "'" & WsInd.Name &"'" & "!A1" Ws.Range(sBackRange).Value = "返回到索引" End If Next Ws WsInd.ActivateEnd Sub
程序分析
程序中使用了Selection来表明当前所选单元格,其Row属性和Column属性返回当前单元格所在的行列号。Hyperlinks属性返回Hyperlinks集合,使用Add方法从工作表的当前单元格开始添加新的链接。
程序说明
正如程序中所添加的注释,sBackRange 代表<返回到索引页>链接的位置,可根据需要修改要放置该链接的位置。此外,还可以根据需要是否显示添加<返回到索引>的链接。