Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 13399|回复: 56

[分享] 如何使用自动生成工作簿目录

  [复制链接]
发表于 2011-4-10 12:05 | 显示全部楼层 |阅读模式
本帖最后由 爱疯 于 2011-8-26 22:30 编辑

之前看见论坛里有问起。该vba代码可以实现新建一个工作表,自动生成的目录工作表名称为“目录”,然后再a1作出超链接。考虑的比较全面,在此推荐一下。个人比较喜欢以下代码,所以导出bas文件放在我的文档里,附件里有。

Public Sub 目录() '生成工作表目录,生成的目录工作表名称为“目录”,生成前请先确认是否已有同名的工作表
Dim ColStart As Long, RowStart As Long
Dim ws As Worksheet, xlSheet As Worksheet
Dim SheetName As String, SheetExists As Boolean
Dim Msg, Style, Title, Response, MyString
SheetName = "目录"
For Each ws In Worksheets
If ws.Name = SheetName Then
SheetExists = True
Exit For
End If
Next ws
If SheetExists Then
Msg = "目录工作表已存在,是否重生成目录工作表?" ' 定义信息。
Style = vbYesNo + vbInformation + vbDefaultButton1 + vbApplicationModal ' 定义按钮。
Title = Worksheets.Parent.Name ' 定义标题。
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' 用户按下“OK”。
MyString = "Yes"
Set xlSheet = Worksheets(SheetName)
xlSheet.UsedRange.Clear
Else
MyString = "No"
Exit Sub
End If
Else
Set xlSheet = Worksheets.Add(Before:=Worksheets(1), Count:=1, Type:=xlWorksheet)
xlSheet.Name = SheetName
End If
If SheetExists Then
Else
End If
xlSheet.Move Before:=Worksheets(1)
xlSheet.Activate
xlSheet.Cells(1, 1).Value = "目录"
RowStart = 2
ColStart = 1
For Each ws In Worksheets
If ws.Name <> SheetName Then
With xlSheet
.Hyperlinks.Add Anchor:=.Cells(RowStart, ColStart), _
Address:="", _
SubAddress:="'" & ws.Name & "'" & "!A1", _
ScreenTip:=ws.Name, _
TextToDisplay:=ws.Name
RowStart = RowStart + 1
End With
End If
Next ws
End Sub
附: vba自动生成目录.zip (1.07 KB, 下载次数: 254)
发表于 2011-4-10 12:26 | 显示全部楼层
回复

使用道具 举报

发表于 2011-4-13 16:02 | 显示全部楼层
回复

使用道具 举报

发表于 2011-4-13 22:23 | 显示全部楼层
谢谢分享,下载学习。
回复

使用道具 举报

发表于 2011-4-14 10:31 | 显示全部楼层
请问怎么发隐藏帖?
回复

使用道具 举报

发表于 2011-4-14 11:48 | 显示全部楼层
好好的学习一下
回复

使用道具 举报

发表于 2011-4-14 13:54 | 显示全部楼层
学习一下,谢谢

回复

使用道具 举报

发表于 2011-4-17 15:34 | 显示全部楼层
{:26:}谢谢。。。
回复

使用道具 举报

发表于 2011-4-18 21:36 | 显示全部楼层
111111111111111111111
回复

使用道具 举报

发表于 2011-4-22 17:39 | 显示全部楼层
支持一下,谢楼主分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-26 17:23 , Processed in 0.288759 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表