在本文中,我们将创建一个宏以按特定的行数拆分数据。

我们在“ RawData”工作表中有原始数据。我们想将此数据分为多个工作表。

ArrowRawData

ArrowMain

在运行宏之前,我们需要指定每张工作表中所需的行数。

ArrowOutput

代码说明

CntRows = Cint(Sheets(“ Main”)。TextBox1.Value)

上面的代码用于获取一张纸所需的张数。

LastRow = .Range(“ A”&.Rows.Count).End(xlUp).Row上面的代码用于获取最后一个单元格的行号。

Sheets.Add after:= Sheets(Sheets.Count)

上面的代码用于在最后一张纸之后添加新纸。

Range(“ A”&n).Resize(CntRows,LastColumn).Copy Range(“ A1”)

上面的代码用于将指定的行数复制到新的工作表中。

请遵循以下代码

Option Explicit

Sub SplitDataToMultipleSheets()

'Declaring variables

Dim LastRow As Long, n As Long, CntRows As Long

Dim LastColumn As Integer

'Getting count of number of rows required in one sheet

CntRows = CInt(Sheets("Main").TextBox1.Value)

'Disabling screen updates

Application.ScreenUpdating = False

With Sheets("RawData")



'Getting row number and column number of last cell

LastRow = .Range("A" & .Rows.Count).End(xlUp).Row

LastColumn = .Range("A1").SpecialCells(xlCellTypeLastCell).Column



'Looping through data in the sheet

For n = 1 To LastRow Step CntRows



'Adding new worksheet

Sheets.Add after:=Sheets(Sheets.Count)

'Copying data to new worksheet

.Range("A" & n).Resize(CntRows, LastColumn).Copy Range("A1")

Next n



.Activate

End With

'Enabling screen updates

Application.ScreenUpdating = True

End Sub

如果您喜欢此博客,请在Facebook和Facebook上与您的朋友分享。

我们希望收到您的来信,请让我们知道如何改善我们的工作并为您做得更好。写信给我们[email protected]