Puantaj tablosundan özet çıkarma

  • Konuyu başlatan Konuyu başlatan lfkaya
  • Başlangıç tarihi Başlangıç tarihi
Katılım
28 Tem 2022
Mesajlar
41
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe

Ekli dosyalar

Çözüm
@lfkaya

Şu kodu deneyin bakalım.

VBA:
Sub P_OZETLE()
Set p = Sheets("PUANTAJ"): Set o = Sheets("OZET")

pson = p.Cells(Rows.Count, 2).End(3).Row
If pson < 6 Then Exit Sub

pscl = p.Range("B6:B" & pson).Value
pbilgi = p.Range("AR6:AV" & pson).Value
pbaslik = p.[AR4:AV4].Value

ReDim snc(1 To (pson - 5) * 5, 1 To 10)

For a = LBound(pscl) To UBound(pscl)
    sat = (a - 1) * 5 + 1
    For aa = 1 To 5
        snc(sat + aa - 1, 1) = pscl(a, 1)
        snc(sat + aa - 1, 2) = 0
        snc(sat + aa - 1, 3) = 0
        snc(sat + aa - 1, 4) = 0
        snc(sat + aa - 1, 5) = IIf(aa = 5, 4, 1)
        snc(sat + aa - 1, 6) = 0
        snc(sat + aa - 1, 7) = pbaslik(1, aa)
        snc(sat + aa - 1, 8) = IIf(aa = 5, 0, pbilgi(a, aa))...
@lfkaya

Şu kodu deneyin bakalım.

VBA:
Sub P_OZETLE()
Set p = Sheets("PUANTAJ"): Set o = Sheets("OZET")

pson = p.Cells(Rows.Count, 2).End(3).Row
If pson < 6 Then Exit Sub

pscl = p.Range("B6:B" & pson).Value
pbilgi = p.Range("AR6:AV" & pson).Value
pbaslik = p.[AR4:AV4].Value

ReDim snc(1 To (pson - 5) * 5, 1 To 10)

For a = LBound(pscl) To UBound(pscl)
    sat = (a - 1) * 5 + 1
    For aa = 1 To 5
        snc(sat + aa - 1, 1) = pscl(a, 1)
        snc(sat + aa - 1, 2) = 0
        snc(sat + aa - 1, 3) = 0
        snc(sat + aa - 1, 4) = 0
        snc(sat + aa - 1, 5) = IIf(aa = 5, 4, 1)
        snc(sat + aa - 1, 6) = 0
        snc(sat + aa - 1, 7) = pbaslik(1, aa)
        snc(sat + aa - 1, 8) = IIf(aa = 5, 0, pbilgi(a, aa))
        snc(sat + aa - 1, 9) = 0
        snc(sat + aa - 1, 10) = IIf(aa = 5, pbilgi(a, aa), 0)
    Next
Next
o.[A2].Resize(UBound(snc), 10).ClearContents
o.[A:A].NumberFormat = "@": o.[H:I].NumberFormat = "#,##0.00"
o.[A2].Resize(UBound(snc), 10) = snc
End Sub
 
Çözüm
Alternatif çözüm tek formul. sanırım 2019 ve üzerinde çalışıyor.
1662566414493.webp
 

Ekli dosyalar

Kayma nedir anlayamadım doğrusu.
Kodu uyguladığınız ve çalıştırdığınız (kayma olmuş hali) belgeyi ekleyin bakılır elbet.
G ve H Sutunundaki değerler 1 satır atlayarak başladı G Sutunundan sonraki değerler ilgili yerlerinde yazmıyor ayrıca BORPNTIPNO = 0 olması gereken satır kalktı
 

Ekli dosyalar

  • Hata.webp
    Hata.webp
    17.2 KB · Görüntüleme: 44
Sayın @lfkaya

Deneme ve kontrollerinizi, foruma eklediğiniz örnek belge üzerinden yaptığınızdan emin misiniz?
Ben bir sorun göremiyorum.

Gerçek belgenizde sorun yaşıyorsanız, örnek belgeyle gerçek belgenin yapılarını karşılaştırıp, farklı olan nedir onu kontrol etmenizde yarar var.
Yine sonuç alamıyorsanız; kodun uygulandığı yeni bir örnek belge ekleyin ki kontrol/düzeltme yapılabilsin.
 
Sayın @lfkaya

Deneme ve kontrollerinizi, foruma eklediğiniz örnek belge üzerinden yaptığınızdan emin misiniz?
Ben bir sorun göremiyorum.

Gerçek belgenizde sorun yaşıyorsanız, örnek belgeyle gerçek belgenin yapılarını karşılaştırıp, farklı olan nedir onu kontrol etmenizde yarar var.
Yine sonuç alamıyorsanız; kodun uygulandığı yeni bir örnek belge ekleyin ki kontrol/düzeltme yapılabilsin.
İlginize Teşekkürler Haklısınız Kayma olmuş
 
Son belgenin/işlemin önceki örnek belgeyle hiçbir bağlantısı/benzerliği yok.
Açılış mesajındaki soru ise cevaplandı ve konu ÇÖZÜLDÜ.

Dolayısıyla yeni örnek belgenizle yeni bir konu açmanızda yarar var.
Vakit müsaitliği durumuna göre ben veya başka bir arkadaşımız destek olacaktır.
 
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst Alt