excel 将一个sheet分割成多个sheet,并生成目录

1、分割sheet

a 、按固定行数分成多个sheet (假设该sheet有2000行,每行9列,每300行分成1个sheet)

Sub test()
    With Sheets("Sheet1")
    For i = 1 To .Range("A2001").End(xlUp).Row Step 300
    Sheets.Add.Name = "YL" & (i - 1) / 300
    .Cells(i, 1).Resize(300, 9).Copy Cells(1, 1)
    Next i
    End With
End Sub

将上面代码复制到vba窗口(打开excel后按ALT+F11或者右键工作表选查看代码);
双击下”ThisWorkbook” 粘贴并执行;

excel 将一个sheet分割成多个sheet,并生成目录_第1张图片

b、按条件筛选并分成多个sheet(利用数据透视表),参照下图(忘记哪找的):

excel 将一个sheet分割成多个sheet,并生成目录_第2张图片

2、生成目录

a、新建一个sheet,名字改为”目录”

Sub createmenu()
    For i = 1 To Sheets.Count
    Cells(i, 1) = Sheets(i).Name
    'Cells(i, 2) = Sheets(i).Cells(2, 2).Value
    Next i
End Sub

双击下目录那个sheet 粘贴并执行;

b、增加超链接

excel 将一个sheet分割成多个sheet,并生成目录_第3张图片

c、增加返回目录
选中所有sheet(目录除外)在任意一张中选个空白的单元格输入 =HYPERLINK(“#目录!A1”,”返回目录”)

你可能感兴趣的:(excel,vba)