• DİKKAT !

    Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak Dosya Yükleme tamamen ücretsizdir.

Soru Bodroda aylar itibarıyla yıllık matrah toplamı getirmede sorun

mars2

Gold Üye
Katılım
22 Nis 2022
Mesajlar
74
Aldığı beğeni
13
Excel V
Office 2016 TR
Gold Bitiş
25 Mayıs 2026
Konu Sahibi
Windows 10 Mozilla Firefox 150
İyi Akşamlar;
Daha önceden userx tarafından yıllık matrahları aylardaki sayfalara aktarılmkata ancak, bodro 40 - 50 kişilik olmasına rağmen yıllık matrahın buşlunduğu G sutunda bodro dışındaki bulunan 190 ncı satıra kadar 0 (sıfır) değeri atamaktadır. Sorunun kaynağı ile çözümü için desteğinizi.


Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
Set ym = Sheets("Yıllıkmatrah")
son = ym.Cells(Rows.Count, 2).End(3).Row
ym.Range("D5:O" & son).ClearContents
For y = 2 To 13
If Sheets.Name = ym.Cells(4, y + 2) Then

For x = 5 To son
Cells(x, y + 2) = Application.WorksheetFunction.SumIf(Sheets.Range("B10:B100"), ym.Cells(x, 2), Sheets.Range("F10:F100"))
If y + 2 > 4 Then
ym.Cells(x, y + 2) = ym.Cells(x, y + 2) + ym.Cells(x, y + 1)

End If

Sheets.Cells(x + 5, 7) = Application.WorksheetFunction.SumIf(ym.Range(ym.Cells(5, 2), ym.Cells(son, 2)), Sheets.Cells(x + 5, 2), ym.Range(ym.Cells(5, y + 2), ym.Cells(son, y + 2)))
Next x
End If

For Z = 10 To son + 5
Sheets.Cells(Z, 7) = ""
Sheets.Cells(Z, 7) = Application.WorksheetFunction.SumIf(ym.Range(ym.Cells(5, 2), ym.Cells(son, 2)), Sheets.Cells(Z, 2), ym.Range(ym.Cells(5, y + 2), ym.Cells(son, y + 2)))
Next Z
Next y
Application.ScreenUpdating = True
MsgBox "YILLIK MATRAHLARINIZ AKTARILDI.", vbInformation, "userx - Excelcozum.com"
End Sub

1777927035800.png
 
Windows 10 Opera 130
Sorunun sebebi şu satır: For Z = 10 To son + 5

Burada son, Yıllıkmatrah sayfasındaki son satıra göre alınıyor. Yıllıkmatrah’ta 185 kişi/satır varsa, aylık sayfalarda 10’dan 190’a kadar G sütununa formül sonucu yazılıyor. Bordroda kişi olmasa bile SUMIF sonucu bulunamadığı için 0 yazıyor.

Şu şekilde düzeltin: aylık sayfada B sütunundaki gerçek son bordro satırını bulun ve sadece o kadar satıra yazdırın.

HTML:
Kod:
İçeriği görebilmek için Giriş yap ya da Üye ol.

Deneyiniz
 
Geri
Üst