Excel 自动生成目录--非常实用的一段代码

作者: 许泽博 发布: 2016/11/4 分类: 系统 阅读: 次 查看评论

 

在用EXCEL 管理东西时,由于EXCE没有像WORD那种的插入目录的功能,

所以管理的SHEET多的时候,快速定位,就会非常麻烦。

当你遇到这种烦恼时,下面的代码就能帮上忙了,可以帮你自动生成目录~

代码:

Sub mulu()
On Error GoTo Tuichu
Dim i As Integer
Dim ShtCount As Integer
Dim SelectionCell As Range

ShtCount = Worksheets.Count
If ShtCount = 0 Or ShtCount = 1 Then Exit Sub
Application.ScreenUpdating = False
For i = 1 To ShtCount
If Sheets(i).Name = "目录" Then
Sheets("目录").Move Before:=Sheets(1)
End If
Next i
If Sheets(1).Name <> "目录" Then
ShtCount = ShtCount + 1
Sheets(1).Select
Sheets.Add
Sheets(1).Name = "目录"
End If
Sheets("目录").Select
Columns("B:B").Delete Shift:=xlToLeft
Application.StatusBar = "正在生成目录…………请等待!"
For i = 2 To ShtCount
ActiveSheet.Hyperlinks.Add Anchor:=Worksheets("目录").Cells(i, 2), Address:="", SubAddress:= _
"'" & Sheets(i).Name & "'!R1C1", TextToDisplay:=Sheets(i).Name
Next
Sheets("目录").Select
Columns("B:B").AutoFit
Cells(1, 2) = "目录"
Set SelectionCell = Worksheets("目录").Range("B1")
With SelectionCell
.HorizontalAlignment = xlDistributed
.VerticalAlignment = xlCenter
.AddIndent = True
.Font.Bold = True
.Interior.ColorIndex = 34
End With
Application.StatusBar = False
Application.ScreenUpdating = True
Tuichu:
End Sub


操作方法:

第一个SHEET的名字改为:目录

点击:Alt+F11--->插入--------模块--------把上面的代码拷贝到模块中

然后再运行就可以了。

注:如果点击生成的链接 提示引用无效时。

把下面代码里的 中文下的单引号,改为英文下的单引号。

ActiveSheet.Hyperlinks.Add Anchor:=Worksheets("目录").Cells(i, 2), Address:="", SubAddress:= _
"'" & Sheets(i).Name & "'!R1C1", TextToDisplay:=Sheets(i).Name

文章来源:新浪博客

« 上一篇下一篇 » 原创文章,转载请注明出处!标签: EXCEL  

评论列表:

说两句吧:

必填

选填

选填

必填,不填不让过哦,嘻嘻。

记住我,下次回复时不用重新输入个人信息

站内公告
欢迎进入我的博客,文章主要来源于网络,若有涉及版权问题,请您及时联系我,也希望我的博客能对您有所帮助!
控制面板
您好,欢迎到访网站!
  [查看权限]
用户注册
纪念日倒计时



网站分类
友情链接
Tags列表