用WPS宏编辑器写一个按固定行数拆分成工作簿的宏
时间: 2024-09-27 10:09:28 浏览: 69
在WPS Office的宏编辑器中,你可以编写一个VBA(Visual Basic for Applications)宏来实现按固定行数将工作表拆分成新的工作簿。下面是一个简单的示例,这个宏会检查当前活动工作表的最后一行,并根据指定的行数将其数据复制到新创建的工作簿中:
```vba
Sub SplitWorkbookByRows()
Dim ws As Worksheet
Dim destBook As Workbook
Dim lastRow As Long
Dim rowToSplit As Long ' 指定的每份新工作簿的行数
' 设置需要的行数
rowToSplit = 500 '例如,每次分割500行
' 获取当前活动工作表
Set ws = ActiveSheet
' 查找最后一行
lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
' 如果最后一行大于指定行数,开始分割
If lastRow >= rowToSplit Then
' 创建一个新的工作簿
Set destBook = Workbooks.Add
' 将数据复制到新工作簿的第一行
ws.Range("A1", ws.Cells(lastRow, ws.Columns.Count)).Copy _
Destination:=destBook.Worksheets(1).Range("A1")
' 保存并关闭原始工作簿
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.FullName & " - Part " & Format(Date, "dd-mm-yyyy") & ".xlsx"
ActiveWorkbook.Close SaveChanges:=False
End If
End Sub
```
阅读全文