Excel精英培训网

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

[已解决]如何在工作表"目录"中列出每20行的工作表名称?

[复制链接]
发表于 2013-2-23 15:17 | 显示全部楼层 |阅读模式
本帖最后由 森林木007 于 2013-2-24 12:34 编辑

各位大师:
       新年好!
       我在网上下载了一个可以在A列列出序号,B列给出工作表名称,但超过20个工作表读入不是很方便.我想实现每20个工作表名称在目录中的A:B中大于20个排列在C:D...中,不知如何修改.请大师出手.谢谢!!!!
Private Sub CommandButton1_Click()
Application.DisplayAlerts = False
Sheets("目录").Delete
Application.DisplayAlerts = True
Set 目录sheet = Sheets.add(before:=Worksheets(1), Type:=xlWorksheet)
Sheets(1).Name = "目录"
目录sheet.Cells(1, 1) = "工作表目录"
目录sheet.Range("A1:B1").Select
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With
    Selection.Merge
For i = 2 To Sheets.Count
目录sheet.Cells(i, 1).Value = i - 1
目录sheet.Cells(i, 2).Value = Sheets(i).Name
目录sheet.Cells(i, 2).Select
ActiveSheet.Hyperlinks.add Anchor:=Selection, Address:="", SubAddress:="'" & Sheets(i).Name & "'!A1"
Next i
目录sheet.Range("A2").Select
目录sheet.Range(Selection, Selection.End(xlDown)).Select
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlCenter
    End With
   目录sheet.Columns("A:B").Select
   目录sheet.Range("A2").Activate
   目录sheet.Columns("A:B").EntireColumn.AutoFit
End Sub

最佳答案
2013-2-23 18:25
本帖最后由 suye1010 于 2013-2-23 19:43 编辑
  1. Private Sub CommandButton1_Click()
  2. Application.DisplayAlerts = False
  3. Sheets("目录").Delete
  4. Application.DisplayAlerts = True
  5. Set 目录sheet = Sheets.add(before:=Worksheets(1), Type:=xlWorksheet)
  6. Sheets(1).Name = "目录"
  7. 目录sheet.Cells(1, 1) = "工作表目录"
  8. 目录sheet.Range("A1:B1").Select
  9.     With Selection
  10.         .HorizontalAlignment = xlCenter
  11.         .VerticalAlignment = xlCenter
  12.     End With
  13.     Selection.Merge
  14. For i = 2 To Sheets.Count
  15. 目录sheet.Cells(((i-2) mod 20)+3, 1+((i-2)\20)*2).Value = i - 1
  16. 目录sheet.Cells(((i-2) mod 20)+3, 2+((i-2)\20)*2).Value = Sheets(i).Name
  17. 目录sheet.Cells(((i-2) mod 20)+3, 2+((i-2)\20)*2).Select
  18. ActiveSheet.Hyperlinks.add Anchor:=Selection, Address:="", SubAddress:="'" & Sheets(i).Name & "'!A1"
  19. Next i
  20. 目录sheet.Range("A2").Select
  21. 目录sheet.Range(Selection, Selection.End(xlDown)).Select
  22.     With Selection
  23.         .HorizontalAlignment = xlCenter
  24.         .VerticalAlignment = xlCenter
  25.     End With
  26.    目录sheet.Columns("A:B").Select
  27.    目录sheet.Range("A2").Activate
  28.    目录sheet.Columns("A:B").EntireColumn.AutoFit
  29. End Sub
复制代码
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2013-2-23 18:25 | 显示全部楼层    本楼为最佳答案   
本帖最后由 suye1010 于 2013-2-23 19:43 编辑
  1. Private Sub CommandButton1_Click()
  2. Application.DisplayAlerts = False
  3. Sheets("目录").Delete
  4. Application.DisplayAlerts = True
  5. Set 目录sheet = Sheets.add(before:=Worksheets(1), Type:=xlWorksheet)
  6. Sheets(1).Name = "目录"
  7. 目录sheet.Cells(1, 1) = "工作表目录"
  8. 目录sheet.Range("A1:B1").Select
  9.     With Selection
  10.         .HorizontalAlignment = xlCenter
  11.         .VerticalAlignment = xlCenter
  12.     End With
  13.     Selection.Merge
  14. For i = 2 To Sheets.Count
  15. 目录sheet.Cells(((i-2) mod 20)+3, 1+((i-2)\20)*2).Value = i - 1
  16. 目录sheet.Cells(((i-2) mod 20)+3, 2+((i-2)\20)*2).Value = Sheets(i).Name
  17. 目录sheet.Cells(((i-2) mod 20)+3, 2+((i-2)\20)*2).Select
  18. ActiveSheet.Hyperlinks.add Anchor:=Selection, Address:="", SubAddress:="'" & Sheets(i).Name & "'!A1"
  19. Next i
  20. 目录sheet.Range("A2").Select
  21. 目录sheet.Range(Selection, Selection.End(xlDown)).Select
  22.     With Selection
  23.         .HorizontalAlignment = xlCenter
  24.         .VerticalAlignment = xlCenter
  25.     End With
  26.    目录sheet.Columns("A:B").Select
  27.    目录sheet.Range("A2").Activate
  28.    目录sheet.Columns("A:B").EntireColumn.AutoFit
  29. End Sub
复制代码
回复

使用道具 举报

 楼主| 发表于 2013-2-23 18:42 | 显示全部楼层
suye1010 发表于 2013-2-23 18:25

版主你好!
谢谢你的回帖,请看附件效果,不知能否实现,谢谢!
增加工作表名称每20个一列.zip (15.37 KB, 下载次数: 3)

点评

程序中少了一对括号. 已在2楼更新,请重试.  发表于 2013-2-23 19:43
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-16 07:44 , Processed in 0.276694 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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