设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 2308|回复: 5
打印 上一主题 下一主题

[基础应用] 請幫忙(自動生成實用工作表目錄)

[复制链接]
跳转到指定楼层
1#
发表于 2005-2-20 11:27:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
請幫忙(生成實用工作表目錄)

Rem 生成目录

'   2001.6.4.(一)pm10:24

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 = 2 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





[此贴子已经被作者于2005-2-20 12:22:49编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-2-20 11:47:00 | 只看该作者
=IF(B12<>"",A11+1,""),然后一直向下填充。
3#
 楼主| 发表于 2005-2-20 11:54:00 | 只看该作者
是用vba自動生成
4#
发表于 2005-2-20 23:15:00 | 只看该作者
以下代码可自动设序号:   For i = 2 To ShtCount      cell(i,1).value=i-1

      ActiveSheet.Hyperlinks.Add Anchor:=Worksheets("目录").Cells(i, 2), Address:="", SubAddress:= _

      "'" & Sheets(i).Name & "'!R1C1", TextToDisplay:=Sheets(i).Name

   Next想得到特定工作表的页数,请参考以下贴子:http://www.office-cn.net/forum.php?mod=viewthread&tid=24456
5#
 楼主| 发表于 2005-2-20 23:57:00 | 只看该作者

幫忙修改

幫忙修改按下自動生成目錄

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
6#
发表于 2005-2-21 05:44:00 | 只看该作者
试一下下面的代码:Sub mulu()

i = 1

For Each sh In Sheets

    If sh.Name <> "目录" Then

        Cells(i + 1, 1).Value = i                  '序号

        ActiveSheet.Hyperlinks.Add Anchor:=Worksheets("目录").Cells(i + 1, 2), Address:="", SubAddress:= _

        "'" & sh.Name & "'!R1C1", TextToDisplay:=sh.Name

        Cells(i + 1, 3).Value = sh.HPageBreaks.Count + 1                '页码

        i = i + 1

    End If

Next

End Sub

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

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2025-1-9 21:19 , Processed in 0.099315 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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