#excel #vba
Вопрос:
У меня возникла проблема, когда мне нужно разделить строки на одном листе на несколько листов. моя проблема в том, что все работают правильно, но при копировании строк с листа на лист количество отличается. позвольте мне объяснить: при выборе листа 1 с 1600 строками я разделил его на два листа по 800 строк, но после выполнения я увидел, что на листе 2 1600 строк, а на листах 4 800 строк. I одинаковое количество строк одинаково на всех скопированных листах.
Вот код:
'split data into Sheets
Sub SplitDataIntoSheets()
Dim WorkRng As Range
Dim NumRow As Range
Dim SplitRow As Integer
Dim ws As Worksheet
On Error Resume Next
TitleID = "Rows Distribution"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", TitleID, WorkRng.Address, Type:=8)
SplitRow = Application.InputBox("Split Row Num", TitleID, 5, Type:=1)
Set ws = WorkRng.Parent
Set NumRow = WorkRng.Rows(1)
Application.ScreenUpdating = False
For i = 1 To WorkRng.Rows.Count Step SplitRow
resizeCount = SplitRow
If (WorkRng.Rows.Count - xRow.Row 1) < SplitRow Then resizeCount = WorkRng.Rows.Count - NumRow.Row 1
NumRow.Resize(resizeCount).Copy
Application.Worksheets.Add after:=Application.Worksheets(Application.Worksheets.Count)
Application.ActiveSheet.Range("A2").PasteSpecial
Set NumRow = NumRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = False
End Sub