• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Karşılaştırma

İnşallah hatalı değildir, çok inceleyemedim.
Kod:
Sub TEST()
    syf = Array([Sayfa1], [Sayfa2], [Sayfa3], [Sayfa4], [Sayfa5], [Sayfa6])
    son = syf(0).Cells(Rows.Count, "B").End(3).Row
    ReDim w(1 To son - 1, 1 To 102)
    lst = syf(0).Range("A2:C" & son).Value
    For i = 1 To son - 1
        w(i, 1) = i
        For ii = 2 To 3
            w(i, ii) = lst(i, ii)
        Next ii
    Next i
    For s = 0 To 5
        lst = syf(s).Range("e2:r" & son).Value    '1 to 14 sutun
        For i = 1 To son - 1
            For ii = 1 To 14
                w(i, ((ii - 1) * 7) + s + 5) = lst(i, ii)
            Next ii
        Next i
    Next s

    For i = 1 To son - 1
        For ii = 11 To 102 Step 7
            w(i, ii) = WorksheetFunction.Average(w(i, ii - 1), w(i, ii - 2), w(i, ii - 3), w(i, ii - 4), w(i, ii - 5), w(i, ii - 6))
        Next ii
    Next i
    Sheets("net karşılaştırma").[b5].Resize(UBound(w), UBound(w, 2)).Value = w

End Sub
 
Alternatif,

En son sayfayı birleştirmeye dahil etmez.
For y = Sheets.Count - 1

birleştirilen sayfaların ilk satırını almaz.
Range("A2:AA" & sonsatir).Select

1.000.000 satırı geçince sayfayı birleşitirmez.
If sonsatir > 1000000 Then

Birleştirilen sayfaları siler.
Sheets(y).Delete


Kod:
Sub Sayfa_Birlestir_XLSX()
   Application.DisplayAlerts = False
  For y = Sheets.Count - 1 To 2 Step -1
    
    Sheets(y).Select
    sonsatir = ActiveSheet.UsedRange.Rows.Count + 1
    
     If sonsatir > 1000000 Then
      GoTo atla
    End If
    
    Range("A2:AA" & sonsatir).Select
    Selection.Cut
    Sheets(y - 1).Select
    Range("A1").Select
    
    sonsatir = ActiveSheet.UsedRange.Rows.Count + 1

    If sonsatir > 1000000 Then
      GoTo atla
    End If
    Range("A" & sonsatir).Select
    ActiveSheet.Paste
    Range("A" & sonsatir).Select
    Sheets(y).Delete
atla:
  Next y
  Application.DisplayAlerts = False

End Sub
 
kardeş çok teşekkür ederim kod çalıştı.
bir şeydaha
isimleri harf sırasına göre yükleme şansımız varmıdır.
 
net karşılaştırma sayfasına bilgiler yükleniyor
isimleri a dan z ye sıralı yüklemesi mümkünmü
 
net karşılaştırma sayfasına bilgiler yükleniyor
isimleri a dan z ye sıralı yüklemesi mümkünmü

Bu şekilde dener mi siniz?


Kod:
Sub menu()
   Call Sayfa_Birlestir
   Call sirala_ekle
End Sub

Sub Sayfa_Birlestir()
   Application.DisplayAlerts = False
  For y = Sheets.Count - 1 To 2 Step -1
    
    Sheets(y).Select
    sonsatir = ActiveSheet.UsedRange.Rows.Count + 1
    
     If sonsatir > 1000000 Then
      GoTo atla
    End If
    
    Range("A2:AA" & sonsatir).Select
    Selection.Cut
    Sheets(y - 1).Select
    Range("A1").Select
    
    sonsatir = ActiveSheet.UsedRange.Rows.Count + 1

    If sonsatir > 1000000 Then
      GoTo atla
    End If
    Range("A" & sonsatir).Select
    ActiveSheet.Paste
    Range("A" & sonsatir).Select
    Sheets(y).Delete
atla:
  Next y
  Application.DisplayAlerts = False

End Sub


Sub sirala_ekle()
    Sheets("Sayfa1").Select
    sonsatir = Cells(Rows.Count, "C").End(3).Row
    secar = "A2:ZZ" & sonsatir
    Range("C2").Select
    ActiveWorkbook.Worksheets("Sayfa1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sayfa1").Sort.SortFields.Add Key:=Range("C2"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
    With ActiveWorkbook.Worksheets("Sayfa1").Sort
        .SetRange Range(secar)
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
    Range("B2:C2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.Copy
    Sheets("net karşılaştırma").Select

    sonsatir2 = Cells(Rows.Count, "C").End(3).Row + 1
    sec = "$C$" & sonsatir2 & ":$D$" & sonsatir2 + sonsatir
    Cells(sonsatir2, 3).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    ActiveSheet.Range(sec).RemoveDuplicates Columns:=Array(1, 2), _
        Header:=xlNo
    Range("C35").Select
End Sub
 
Kardeş öncelikle ilginize teşekkür ederiz

sayfaları silmeyecek ve net karşılaştırma sayfasına yükleyecek
altı sayfadaki isimleri karşilaştıracak net karşılaştırma sayfasında sadece 1 isim olacak denemelerin gelmesi gereken yerlere gelecek

alt alta değilde yan yana
 
Kardeş öncelikle ilginize teşekkür ederiz

sayfaları silmeyecek ve net karşılaştırma sayfasına yükleyecek
altı sayfadaki isimleri karşilaştıracak net karşılaştırma sayfasında sadece 1 isim olacak denemelerin gelmesi gereken yerlere gelecek

alt alta değilde yan yana

Siz konuya hakimsiniz ne yapılması gerektiğini iyi biliyor sunuz. Ama yeterince anlatabildiginizi düşünmüyorum.

Bir önceki mesajda her şey tamam, sadece isimler sıralı olarak eklenecek gibi bir anlam çıkıyor.

Bir sonraki mesajda her şeye yeniden başlanıyor :)

Sürekli değişen talepler, yorucu oluyor.

Ne yapılması gerektiğini aşama aşama tam olarak hiç bilmeyen birine anlatır gibi anlatırsanız daha hızlı sonuç alırsınız.
 
Evet kod çalıştı çalışmadı değil yalnız 1 sayfa ve alt alta topluyor

benim istediğim örnek çalışmaya baktı iseniz net karşılaştırma sayfasında

diğre sayfalardaki isimleri karşılaştırıp isimleri alıyor

denemeleride yan yana 1,2,3,4,5,6 şeklinde ismin karşısına eklemesini istiyorum

teşekkürler
 
Geri
Üst