Yalnız Mesajı Göster
Eski 09-02-2018, 17:26  
Ömer BARAN
Uzman
 
Giriş: 08/03/2011
Şehir: ANKARA / İSTANBUL
Mesaj: 9,670
Excel Vers. ve Dili:
Office 2013 TÜRKÇE
Varsayılan

Merhaba.

Örnek belgelerinizin;
-- gerçek belgeyle aynı yapıda olması ve
-- gerçek verileri temsil edebilecek nitelikte tutarlı veriler içermesi
yeterlidir. Yani verilerin gerçek veri olmasına ve veri yığının büyük olmasına lüzum yok.

Örnek belge yükleme yöntemine ilişkin kısa açıklama cevabımın altındaki İMZA bölümünde var.

İsteğiniz birçok şekilde yapılabilir elbette.
Örneğin basitce, hücreye formül uygula sonucunu değer olarak yaz şeklinde, aşağıdaki gibi olabilir.

Koddaki mavi satırlar her iki sayfadaki son dolu hücrenin satır numarasını tespit etmeye yöneliktir.
Bundan amaç; arama/sayma/koşullu toplama işleminin tüm sütun boyunca değil sadece dolu alanda yapılması,
işlemin sadece gerektiği kadar satıra uygulanmasıdır.

Bu, son satır tespitinde A sütunu kriter olarak kullanıldı.
Mutlaka veri olan bir sütun olmak üzere başka bir sütun adı olarak değiştirilebilir.
.
Kod: (Rahat kopyalayabilmeniz için tüm kodu seçmenizi sağlar)
Sub FORMULLER()
Set d = Sheets("DATA1")
datasonsat = Sheets("DATA1").Cells(Rows.Count, "A").End(3).Row
sayimsonsat = Sheets("SAYIM").Cells(Rows.Count, "A").End(3).Row

With d.Range("G2:G" & datasonsat)
    .Formula = "=IF(DATA1!A2="""","""",SUMPRODUCT((SAYIM!$A$2:$A$" & sayimsonsat & "=DATA1!A2)*(SAYIM!$E$2:$E$" & sayimsonsat & ")))"
    .Value = .Value
End With

With d.Range("H2:H" & datasonsat)
    .Formula = "=IF(DATA1!A2="""","""",(IF(DATA1!G2>DATA1!E2,DATA1!G2-DATA1!E2,DATA1!E2-DATA1!G2)))"
    .Value = .Value
End With

With d.Range("I2:I" & datasonsat)
    .Formula = "=IF(DATA1!A2="""","""",IF(DATA1!G2>DATA1!E2,""FAZLA"",IF(DATA1!E2>DATA1!G2,""EKSİK"",IF(DATA1!G2=DATA1!E2,""TAM""))))"
    .Value = .Value
End With

With d.Range("J2:J" & datasonsat)
    .Formula = "=IF(DATA1!A2="""","""",""TÜM LİSTE"")"
    .Value = .Value
End With

End Sub
__________________
.
☾✭ İnadına TÜRKÇE ✭☽

-- Sorunuzu, gerçek belgenizle aynı yapıda ve olması gereken sonuçların elle yazıldığı örnek belge ile destekleyiniz.
-- ALTIN ÜYELİK öneriyorum. / FORUM KURALLARInı mutlaka okuyunuz.
-- ALTIN ÜYE olmayanlar, örnek belgeyi dosya.tc, dosya.co gibi bir siteye yükleyip, belgeye erişim adresini verebilir.
-- Özel mesaj ile soru sormayınız. / Geri bildirimde bulunulmayan cevaplarımı siliyorum.
Ömer BARAN Çevrimdışı   Alıntı Yaparak Cevapla