/ / Excel’de Dosya Parçalama(Split Excel)
EXCEL

Excel’de Dosya Parçalama(Split Excel)

Eğer şuan bu sayfaya gelmişseniz, aradığınızı bulmak üzereseniz 🙂

Büyük bir excel dosyasını aşağıdaki kodları kullanarak kriterlere göre bölebilirsiniz.

Sayfanın altında program yer almakta olup, detaylı açıklama videodadır.

Faydalı olması dileğiyle…

Private Sub CommandButton1_Click()
    'bymmb.com
    
    listesonu = Cells(Rows.Count, "A").End(xlUp).Row
    sonsutun = ActiveSheet.UsedRange.SpecialCells(xlLastCell).Column
    sonsutunismi = Split(Cells(1, sonsutun).Address, "$")(1)
    alansonu = sonsutunismi & sonsutun
    
    listem = Range("A1" & ":" & alansonu)
    
    kritersec = Application.InputBox("Hangi sütuna göre bölünecek ise o sütunun sıra sayısını girin? ", "Parçala/Böl/Yönet", Type:=1)
    Kriter = Cells(1, kritersec).Value
    hangikolon = Split(Cells(1, kritersec).Address, "$")(1)
    If kritersec = 0 Then Exit Sub
    
    
        With Application.FileDialog(msoFileDialogFolderPicker)
        .AllowMultiSelect = False
        .Show
         
        If .SelectedItems.Count > 0 Then
            uzanti = .SelectedItems(1)
        End If
         
        End With
    
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    
           
    Columns(hangikolon & ":" & hangikolon).Select
    Selection.Copy
    Columns("XFD:XFD").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveSheet.Range("$XFD$1:$XFD$100000").RemoveDuplicates Columns:=1, Header:=xlYes
    Cells(1, 1).Select
        
        
    sonkriter = Cells(Rows.Count, "XFD").End(xlUp).Row
    For i = 2 To sonkriter
    dosyaadi = Cells(i, 16384)
        
        
    Selection.AutoFilter
    ActiveSheet.Range("A1:" & sonsutunismi & 1).AutoFilter Field:=kritersec, Criteria1:=dosyaadi
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Range("A1").Select
        
        
    Workbooks.Add
    ActiveSheet.Paste
    ActiveSheet.Columns("A:XFD").EntireColumn.AutoFit
    ActiveSheet.Cells(1, 1).Select
    ActiveWorkbook.SaveAs Filename:=uzanti & dosyaadi & "-" & Format(Now, "dd.mm.yyyy") & ".xlsx", _
    FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    ActiveWindow.Close
        
    If ActiveSheet.AutoFilterMode = "True" Then
    ActiveSheet.AutoFilterMode = "False"
    End If
    
        
    Next i
    
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    Range("XFD1:XFD100000").Clear
    
OutPut = MsgBox("Bölme İşlemi Başarıyla Tamamlanmıştır!", vbOKOnly, "BYMMB.com")

End Sub

 

Dosyayı indirmek için tıklayın.

Similar Posts

7 Comments

  1. Merhaba,
    Öncelikle Excel’de Dosya Parçalama(Split Excel) konunuz için çok teşekkür ediyorum. İnanılmaz işime yarıyor.
    Her seferinde de sizi saygı ile anıyorum. Teşekkür ederim tekrar.
    Sorum şu. Parçalamak istediğimiz excel dokümanında birden fazla sheet var ise nası bir yol izlemeliyiz.
    Örneğin elimdeki excel dokümanında 4 sheet var. her sheetinde 100 okulun sınıf sınıf sınav sonuçları var. bir sheetde 4. sınıflar sınav sonuçları, diğerinde 5. sınıf, diğerinde 6. sınıf …. şeklinde ama okul sütunlarında ortak isimler. x okul için 4 sheeti de içeren excellere parçalayabilir miyiz?
    (Umarım anlatabildim 🙂 şimdiden teşekkürler.

    1. Yapılabilir. Tabi bu kodu daha da uzatır.
      Şu sıralar online dashboard eğitimi hazırladığım için biraz yoğunum ancak ilk fırsatta öyle bir ekleme yapıp siteye ekleyeceğim.
      Size de ayrıca mail atarım.

      1. tekrar çok teşekkür ederim. ellerinize sağlık. sabırsızlıkla bekliyorum.
        saygılar…

  2. Merhabalar,
    Benim exel dosyamın boyutu 95mb eklemiş olduğunuz split sayesinde işlemi yapabiliyorum ama 32. sayfadan sonra parçalama yapılamıyor donuyor.

    1. Sayfa sınırı yoktur. Parçalanamayan dosyanız bozuk olabilir.

  3. Yaptığım işin neredeyse tamamını otomatize etmişken en angarya kısmı olan bu bölümde takılıyordu. Emeklerinize sağlık.

  4. Dosya gerçekten işimi gördü çok teşekkürler, bu parçalı dosyaları tekrar birleştirme işlemi yapılabiliyor mu?

    Ben bayilerimden topladığım aynı başlıklı excel leri alt alta birleştirmek istiyorum, bunun için bir öneriniz var mı?

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.