Я не знаю, как много вы знаете о VBA, но вы можете использовать следующие коды для достижения своей цели. Я отправлю 2 варианта. Первый макрос удалит строки, скопированные из исходного текста, второй макрос сохранит значения исходного листа. Все, что вам нужно сделать, это обновить код с именем вашей рабочей таблицы и количеством строк, которые вы хотите в каждом сгенерированном листе.
Обновление Items
Set CWS = Sheets("Sheet2") 'Source Worksheet name
LineNo = 5 ' Number of lines in each sheet
Macro 1: удалим скопировал строки из исходного листа.
Dim CWS As Worksheet
Dim LastRow As Long
Dim S_No As Long
Dim LineNo As Long
Set CWS = Sheets("Sheet2") 'Source Worksheet name
LastRow = Range("A" & Rows.Count).End(xlUp).Row
LineNo = 5 ' Number of lines in each sheet including header
S_No = 1
i = 1
While i < LastRow
CWS.Range("1:" & LineNo).Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Partition " & S_No
Sheets("Partition " & S_No).Range("A1").PasteSpecial
CWS.Range("2:" & LineNo).Delete Shift:=xlUp
LastRow = CWS.Range("A" & Rows.Count).End(xlUp).Row
S_No = S_No + 1
Wend
Макро 2: Будет держать скопированные строки в исходном листе.
Dim CWS As Worksheet
Dim LastRow As Long
Dim S_No As Long
Dim LineNo As Long
Set CWS = Sheets("Sheet2") 'Source Worksheet name
LastRow = Range("A" & Rows.Count).End(xlUp).Row
LineNo = 5 ' Number of lines in each sheet excluding header
S_No = 1
For i = 2 To LastRow
CWS.Range("1:1," & i & ":" & i + LineNo - 1).Copy
Sheets.Add After:=Sheets(Sheets.Count)
ActiveSheet.Name = "Partition " & S_No
Sheets("Partition " & S_No).Range("A1").PasteSpecial
i = i + Sheets("Partition " & S_No).Range("A" & Rows.Count).End(xlUp).Row - 1
S_No = S_No + 1
Next
UPDATE: Я обновил код, чтобы скопировать первую строку в качестве заголовка для всех листов, созданных. Но, пожалуйста, прочитайте комментарий рядом с переменной LineNo
.
Большое спасибо за помощь. Я новичок в vba. я учился у себя дома. Еще раз спасибо . –
Спасибо, но все же у меня есть 1 сомнение, мне нужны заголовки одинаковые для всех листов. Большое спасибо за то, что он действительно работает. –
@vijaybhatt привет, я обновил код в зависимости от вашего запроса. Теперь он скопирует первую строку как заголовок для всех страниц. – Dubison