Birden fazla excel sayfasını tek excel sayfasında birleştirmek

Katılım
28 Ocak 2008
Mesajlar
25
Excel Vers. ve Dili
excel 2003
Merhaba
netsis muhasebe programını kullanıyoruz. verilerimiz çok yogun örnegin bir satış faturası raporu almak istediğimde yaklaşık 200 bin adet netsis bunu excele atarken birden fazla excel sayfasına kaydediyor.her bir sayfa yaklaşık 16 bin satır oluyor. yani 200 bin satırlık veriyi yaklaşık 13 ayrı excel sayfasına atıyor. bu excelllerinde her bir sayfası 64 bin satır oluyor. ( yani netsis 16 bin satırı veriyle dolduruyor kalan kısım boş oluyor)
Ben bu raporu kontrol etmek için tek excel sayfasında görmek istiyoruz. her ay manuel olarak yeni bir excel çalışma kitabı açıp kopyala yapıştır yapıyorum.

Bunu tek sayfada otomatik birleştirebilirmiyim?
 
Katılım
10 Ekim 2013
Mesajlar
424
Excel Vers. ve Dili
Excel 2013 (64bit) - Türkçe
Altın Üyelik Bitiş Tarihi
26/05/2022
o kadar çok veriyi tek bir excel e yüklemek excel i şişirmez mi? :unsure:
 
Katılım
28 Ocak 2008
Mesajlar
25
Excel Vers. ve Dili
excel 2003
hayır zaten o verileri tek sayfada kopyala yapıştır yapıyorum. excel 1 milyon satıra kadar alıyor veri. benim yapacagım satıra sayısı 250 bin civarında. sadece kopyala yapıştır kısmı ugraştırıyor beni.
 
Katılım
29 Haziran 2018
Mesajlar
297
Excel Vers. ve Dili
2016 TÜRKÇE
Merhaba Okuldaki bilgisayarda bu dosyayla veya bir başka dosyayla açık olan tüm sayfaları alt alta birleştiren bir kod vardı. Ancak o dosyayı evdeki bilgisayarımda bulamadım. Daha önce kullandım. Çalıştı. Ancak bu bilgisayarda çalıştıramadım. İnşallah bulunca eklerim. Saygılar.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,490
Excel Vers. ve Dili
Ofis 365 Türkçe
Merhaba,

Aşağıdaki kodları deneyiniz ve kendinize göre uyarlayınız.

Tüm sayfalar "Sayfa3" te birleştirilir, bu sayfa olmalıdır. Sayfa adını değiştirebiliriniz.

Kod:
Sub TekSayfadaBirlestir()

    Dim Syf As Worksheet, _
        s1  As Worksheet, _
        i   As Long
    
    Set s1 = Sheets("Sayfa3")
    s1.Cells.ClearContents
    
    For Each Syf In Worksheets
        If Not Syf.Name = s1.Name Then
            If s1.Range("A1") = "" Then Syf.Range("1:1").Copy s1.Range("A1")
            i = s1.Cells(Rows.Count, "A").End(3).Row + 1
            Syf.Range("A1").CurrentRegion.Offset(1, 0).Copy s1.Range("A" & i)
        End If
    Next Syf
    
    MsgBox "BİRLEŞTİRME TAMAMLANMIŞTIR....", vbCritical, "excel.web.tr"
    
End Sub
 
Üst