이 기사에서는 특정 행 수로 데이터를 분할하는 매크로를 만듭니다.

“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]로 문의 해주세요