-1
嗨我有一个包含约10,000条记录和约8列的excel电子表格。我想将Excel电子表格分解成包含每行250行数据的不同电子表格。举个例子。 Spread sheet 1将有250行 Spread sheet 2将有另外250行(原始10,000列表中的251-500)等等,直到全部完成。它还应该保留每个电子表格上的原始标题。如何将excel电子表格拆分为由行分隔的单独Excel表格
任何人都可以提供帮助吗?
嗨我有一个包含约10,000条记录和约8列的excel电子表格。我想将Excel电子表格分解成包含每行250行数据的不同电子表格。举个例子。 Spread sheet 1将有250行 Spread sheet 2将有另外250行(原始10,000列表中的251-500)等等,直到全部完成。它还应该保留每个电子表格上的原始标题。如何将excel电子表格拆分为由行分隔的单独Excel表格
任何人都可以提供帮助吗?
这应该工作,假设数据来自A1:Z1000。只需根据需要更改范围,工作簿名称和“另存为”路径即可。
Sub generateSheets()
Dim sheetName As String
Dim headerRng As Range
Set headerRng = Workbooks("GenerateSheetsTest.xlsm").Worksheets("sheet1").Range("A1:Z1")
Application.ScreenUpdating = False
For i = 0 To 1000 Step 250
sheetName = "Until" & i + 250
Set NewBook = Workbooks.Add
headerRng.Copy
NewBook.Worksheets("Sheet1").Range("A1").PasteSpecial (xlPasteValues)
Workbooks("GenerateSheetsTest.xlsm").Worksheets("sheet1").Range("A" & i + 2 & ":Z" & i + 251).Copy
NewBook.Worksheets("Sheet1").Range("A2").PasteSpecial (xlPasteValues)
NewBook.SaveAs fileName:="C:\Users\" & Environ$("username") & "\Documents\Output\" & sheetName & ".xlsx"
ActiveSheet.Range("A1").Select
ActiveWorkbook.Close True
Next i
Application.ScreenUpdating = True
End Sub
非常感谢您的回复。 –
我认为你正在寻找类似的东西[这](http://stackoverflow.com/questions/19325865/excel-vba-copy-a-range-into-a-new-workbook) 。 – David