• DİKKAT

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

Maliyet Hesaplama

Katılım
5 Kasım 2007
Mesajlar
4,727
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Merhaba,

Yemeklere ait maliyetlerin toplamını, diğer sayfaya almak istiyorum,

Teşekkür ederim.
 

Ekli dosyalar

Merhaba.

Aşağıdaki formülü YEMEK_MÖNÜ sayfası AL9 hücresine uygulayın ve aşağı doğru kopyalayın (yardımcı sütun/alan kullanılmasına lüzum yok).
.
Kod:
=[COLOR="red"]TOPLA[/COLOR]([COLOR="red"]DOLAYLI[/COLOR]("LİSTE!H"&[COLOR="red"]KAÇINCI[/COLOR]($AE9;LİSTE!$B:$B;0)&":H"&[COLOR="red"]EĞER[/COLOR]([COLOR="red"]EHATALIYSA[/COLOR]([COLOR="red"]KAÇINCI[/COLOR]([COLOR="red"]KAYDIR[/COLOR](LİSTE!$A$1;[COLOR="red"]KAÇINCI[/COLOR]($AE9;LİSTE!$B:$B;0)-1;0)+1;LİSTE!$A:$A;0)-1);[COLOR="red"]KAÇINCI[/COLOR]("ZZZ";LİSTE!$B:$B;1);[COLOR="red"]KAÇINCI[/COLOR]([COLOR="red"]KAYDIR[/COLOR](LİSTE!$A$1;[COLOR="Red"]KAÇINCI[/COLOR]($AE9;LİSTE!$B:$B;0)-1;0)+1;LİSTE!$A:$A;0)-1)))
 
Sayın Ömer BARAN merhaba,

Gösterdiğiniz ilgi ve çözüm için teşekkür ederim, formül fazlasıyla işimi görüyor.

Benim için çok gerekli ve acil olmasa da, makrolu çözümünü de öğrenmek isterim, müsait olduğunuz bir ara öğretirseniz memnun olurum.

Saygılarımla.
 
Sistemden kaynaklı mükerrer cevap olmuş, bu nedenle mesaj silindi.
 
Bilgisayar başında değilim.
Ancak ilk aklıma gelen; mönüde, listedeki son yemek olursa,
verdiğim formül sonuç vermez. Çünkü yemek adının solundaki sıra numarasını kullanarak çalışıyor.
Önce başlangıç satırı sulunuyor > burada sorin olmaz
Sonra bir sonraki zayının satırı bulunuyor > sorun burada çıkar çünkü son yemekten sonra bir sonraki sayı yok.
O nedenle formülün bu durumu da kavrayabilecek şekilde güncellenmesi gerekecek.
Bilgisayar başına geçtiğimde düzenleme yaparak cevap yazarım.
Makro konusuna da bakarım sorun değil.
 
Sayın Ömer BARAN tekrar merhaba,

Nezaketiniz ve bilgilendirme için teşekkür ederim.

Saygılarımla.
 
Önceki formül cevabımı güncelledim.
Makroya daha sonra bakarım.
 
Sayın Ömer BARAN merhaba,

Düzenlenen formülü dosyama uyguladım,

Formül sorunsuz çalışmaktadır, teşekkür ederim.

Saygılarımla.
 
Tekrar merhaba.

Aşağıdaki makro da aynı işlemi yapacaktır.
.
Kod:
[B]Sub MALIYETBUL()[/B]
Set y = Sheets("YEMEK_MÖNÜ"): Set l = Sheets("LİSTE")
lson = l.Cells(Rows.Count, "C").End(3).Row
For sat = 9 To 15
    If WorksheetFunction.CountIf(l.[B:B], y.Cells(sat, "AE")) > 0 Then
        If y.Cells(sat, "AE") <> "" Then
            ilk = WorksheetFunction.Match(y.Cells(sat, "AE"), l.[B:B], 0)
            If WorksheetFunction.CountIf(l.[A:A], l.Cells(ilk, "A") + 1) = 0 Then
                son = lson
            Else: son = WorksheetFunction.Match(l.Cells(ilk, "A") + 1, l.[A:A], 0) - 1
            End If
                For lsat = ilk To son
                    mlyt = mlyt + l.Cells(lsat, "H"): Next
                y.Cells(sat, "AL") = mlyt: mlyt = 0
            Else: y.Cells(sat, "AL") = ""
        End If
    Else: y.Cells(sat, "AL") = 0
    End If
Next
[B]End Sub[/B]
 
Tekrar merhaba. (Özel Mesajlaşmayı devre dışı bıraktığınız için konu sayfasına yazıyorum)

Makro ile çözüm konusunda geri bildirimde bulunmadığınıza göre, cevabı fark etmemiş olmalısınız.
Olumlu/olumsuz sonuç bildirirseniz sevinirim.
.
 
Sayın Ömer BARAN merhaba,

Evet fark etmemişim, özür dilerim,

Kod gayet güzel çalışıyor, emek ve duyarlığınız için de çok teşekkür ederim.

Saygılarımla.
 
Kolay gelsin.
 
Geri
Üst