分享高质量的原创Office教程、Word教程、Excel教程。
位置:主页 > excel教程 >

excel表格制作目录的操作方法

发布时间:2019-07-10 02:09:53 来源:www.roce6.com 浏览量:
excel表格已经在我国普及,但有一些新用户会遇见对excel表格制作目录进行设置的问题,其实有很多用户都反映过如何设置excel表格制作目录的问题,那么到底怎样才能快速的设置excel表格制作目录呢?其实很简单,只需要按照单击目录,切换到需要的工作表。来处理就搞定了,现在详细的给大家讲下excel表格制作目录的具体步骤:

 

工作中,如果数据量大工作表多文件,查看数据就需要来回切换工作表,操作很不便。于是就有了目录索引。
网上Excel目录索引教程有两种,都只实现了单向跳转:
第1种,目录只存在“目录”工作表里。
单击目录,切换到需要的工作表。
缺点:
只是单向跳转,无法从工作表返回目录,工作表之间的切换仍然很不方便,需要单击工作表标签才能切换。
目录不会自动更新。增加新的工作表后,需要在目录里手动填充公式才能更新目录。
excel目录单向跳转
第2种,目录存在所有工作表里。
单击目录,可以方便的在各个工作表中切换。
缺点:
目录挤占页面空间
目录不会自动更新。增加新的工作表后,需要在目录里手动填充公式才能更新目录。
excel目录单向跳转
今天要分享给大家的是做可以双向跳转、全自动更新的目录索引:
◎单击目录,跳转到工作表,双击工作表单元格,跳转到目录
◎增加、删除了工作表后,目录自动更新,不用手动填充公式
◎不但能快速实现工作表之间的切换,目录也不挤占页面空间。
效果如下:
excel目录双向跳转
第一步:生成工作表目录
(1)输入代码
按Alt+F11打开VBA编辑器,然后在左侧工程资源管理器窗口,双击EXCEL对象里面的“Sheet1(目录)”,在右侧的代码窗口输入如下代码(加QQ群:920864360可以下载代码):
Private Sub worksheet_activate()
Dim i As Integer, ss As String
Range("a:a").Clear '清空A列
For i = 1 To Worksheets.Count
Range("A" & i).Value = Worksheets(i).Name '逐个获取工作表名称
Next i
End Sub
单引号'用于代码注释,其后的信息在VBA窗口里会显示为绿色,不会作为代码执行。
解析:
Activate表示工作表激活。上述代码表示:一旦从其他工作表跳转到“目录”工作表,就执行代码,逐个获取工作表的名称,在目录工作表的 A列生成目录。
(2)生成目录
首先单击任何一个非目录工作表,然后再单击切换到“目录”工作表,完成目录生成。
excel自动生成目录
第二步:目录跳转到各工作表
打开VBA编辑器,双击EXCEL对象里面的“Sheet1(目录)”,在右侧的代码窗口输入如下代码:
Private Sub worksheet_SelectionChange(ByVal target As Range)
Dim sht As Worksheet
If target.Count > 1 Then Exit Sub '单击多个单元格不执行代码
On Error Resume Next '碰到错误继续执行
Set sht = Worksheets(target.Value) '查看是否存在以Target.Value命名的工作表
If Err.Number = 0 Then '如果错误为0,即工作簿存在以Target.Value命名的工作表,否则就不执行代码
Worksheets(target.Value).Activate '激活该工作表
End If
End Sub
解析:
SelectionChange表示点击单元格。上述代码意思:单击目录列中的某单元格就会跳转到以该单元格值命名的工作表。为了排除错误跳转,代码还设置了单击多个单元格不跳转、如果不存在以单元格值命名的工作表也不跳转等规则。
excel目录跳转到工作表
第三步:由各工作表跳回目录
打开VBA编辑器,然后在左侧工程资源管理器窗口,双击EXCEL对象里面的“ThisWorkbook”,在右侧的代码窗口输入如下代码:
Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Worksheets("目录").Activate
End Sub
解析:
SheetBeforeDoubleClick表示双击单元格。上述代码意思:在任一工作表内双击单元格就跳转到“目录”工作表。
excel跳转到目录
Ok,现在我们就实现了双向跳转的全自动目录索引创建。
最后提醒大家一下,如果想在工作簿使用VBA代码,除了EXCEL2003其他版本的都要保存为EXCEL启用宏的工作簿“xlsm”格式哦!