Sayfadaki verileri belirli adette bölme

Katılım
8 Ağustos 2005
Mesajlar
53
Excel Vers. ve Dili
2021 / Türkçe
Altın Üyelik Bitiş Tarihi
14-10-2023
Merhaba,

94148 satırlık bir excel dosyasını baştaki satır her çalışma kitabında sabit kalacak şekilde 2000 satırlık parçalar halinde bölmek istiyorum.

Her kitapta yenilenecek başlıklar şunlardır:

A1:TITLE
B1:WRITER
C1:pERFORMER
D1:COSIS WORK NUMBER
E1:MUSIC DURATION
F1:USAGES
G1:AMOUNT
H1:pERFDATE
I1:pERFTIME
J1:pFACTOR
K1:SOURCE

Bu konuda yardımızı rica ediyorum.

Teşekkürler
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,324
Excel Vers. ve Dili
2007 Türkçe
Merhaba,
Aşağıdaki kodu deneyiniz. (Verilerinizin 2. satırdan başladığı varsayılmıştır.)
Kod:
Sub Kod()
Set w1 = ThisWorkbook
Set s1 = ThisWorkbook.ActiveSheet
Application.ScreenUpdating = False
başlık = Array("TITLE", "WRITER", "PERFORMER", "COSIS WORK NUMBER", "MUSIC DURATION", "USAGES", "AMOUNT", "PERFDATE", "PERFTIME", "PFACTOR", "SOURCE")
For a = [COLOR="Red"]2 [/COLOR]To s1.Range("A" & Rows.Count).End(3).Row Step 2000
    say = say + 1
    Set w2 = Workbooks.Add
    Set s2 = w2.Sheets(1)
    s2.Range("A1:K1") = başlık
    Range(s1.Cells(a, "A"), s1.Cells(a + 1999, "K")).Copy s2.Range("A2")
    w2.SaveAs Filename:=w1.Path & "\" & w1.Name & " - Parça " & say & ".xlsx", _
            FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    w2.Close 1
Next
Application.ScreenUpdating = True
End Sub
 
Katılım
8 Ağustos 2005
Mesajlar
53
Excel Vers. ve Dili
2021 / Türkçe
Altın Üyelik Bitiş Tarihi
14-10-2023
Merhaba,
Aşağıdaki kodu deneyiniz. (Verilerinizin 2. satırdan başladığı varsayılmıştır.)
Kod:
Sub Kod()
Set w1 = ThisWorkbook
Set s1 = ThisWorkbook.ActiveSheet
Application.ScreenUpdating = False
başlık = Array("TITLE", "WRITER", "PERFORMER", "COSIS WORK NUMBER", "MUSIC DURATION", "USAGES", "AMOUNT", "PERFDATE", "PERFTIME", "PFACTOR", "SOURCE")
For a = [COLOR="Red"]2 [/COLOR]To s1.Range("A" & Rows.Count).End(3).Row Step 2000
    say = say + 1
    Set w2 = Workbooks.Add
    Set s2 = w2.Sheets(1)
    s2.Range("A1:K1") = başlık
    Range(s1.Cells(a, "A"), s1.Cells(a + 1999, "K")).Copy s2.Range("A2")
    w2.SaveAs Filename:=w1.Path & "\" & w1.Name & " - Parça " & say & ".xlsx", _
            FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    w2.Close 1
Next
Application.ScreenUpdating = True
End Sub
Çok teşekkür ederim. İnanılmaz faydalı oldu.
 
Üst