Soru 2
Aşağıdaki gibi bir tablomuz var.
Bir müşterinin yaptığı alışverişe ilişkin olan bu tabloda; müşterinin farklı çeşit peynirler için ödediği toplam tutarı bulacağız.
Formül ve/veya makro kabul olmakla birlikte; filtreleme yaparak,elle manuel toplatarak vb. yöntemler kullanılarak yapılan çözümler kabul edilmemektedir 🙂
İdeal yöntem tek bir formülle yapmaktır.
Dosyayı buradan indirebilir, cevaplarınızı yoruma yazabilirsiniz.
CEVAP
Doğru sonuca ulaşan arkadaşları tebrik ederim.
En ideal çözüm;
=ETOPLA(B:B;”*peynir*”;C:C)
+ETOPLA(B2:B11;”*”&”Peynir”&”*”;C2:C11) = 149
=ETOPLA(B2:C11;”*Peynir*”;C2:C11)
Sub mbb()
For i = 2 To 11
If Range(“b” & i) Like “*Peynir*” Then
peynir = peynir + Range(“c” & i)
End If
Next i
Range(“e5”) = “Peynir için Toplam Ödenen ” & peynir
End Sub
hocam sizin anlatımızla python sql serisi kurs görmeyi bekliyorum
=TOPLA(EĞER(ESAYIYSA(MBUL(“Peynir”; B2:B11));KAYDIR(B2:B11;;1);0))
Ctrl+Shift+Enter yapmak şart.
Merhaba hocam
formül =>>=ETOPLA(B2:B11;”*” & “Peynir” & “*”;C2:C11)
=ETOPLA(B2:C11;”*peynir*”;C2:C11)
=ETOPLA(B2:B11;”*Peynir*”;C2:C11)
Peynir kelimesi bir hücreye yazılıp dinamik hale de getirilebilir.
=ETOPLA(B:B;”*peynir*”;C:C)
Private Sub CommandButton1_Click()
Range(“f13”) = WorksheetFunction.SumIf(Range(“b2:c11”), “*Peynir*”, Range(“c2:c11”))
End Sub
Merhaba,
D2 Hücresine =EĞERHATA(EĞER(MBUL(“Peynir”;B2)=D1;0;C2+D1);D1) yazıp süreklerim. Son satır toplamı verir.
Kolay gelsin.
=+SUMIFS(C2:C11,B2:B11,”*Peynir*”)
=+SUMIF(B2:C11,”*Peynir*”,C2:C11)
İŞLEM SIRASI
1 EĞERHATA(EĞER(BUL(G11;B2:B11);1;0);””)
2 EĞER(D2=1;$G$11;0)
3 ETOPLA(E:E;G11;C:C)
VERİ DOĞRULAMA İLE İLK ÖNCE GRAMAJLARI AYIRIP SONRA ÜRÜN FİYATI İLE ÇARPIP TOPLAYARAK BULURUZ
ETOPLA(B2:B11;”*pey*”;C2:C11)
=TOPLA.ÇARPIM(SOLDAN(B2:B11;4)/1000;C2:C11)
merhabalar,
=ETOPLA(B2:B11;”*Peynir*”;C2:C11)
=ETOPLA(B:B;”*”&”peynir”&”*”;C:C)
F7=Peynir
=SUMIFS(C2:C11,B2:B11,”*”&F7&”*”)=149
1. Text to columns by ” ” delimiter
2. Counta ile Peynir yazısı gelmeyenler ayrıştırılır.
3. Counta 1 verenler için aritmatik işlem ile toplanır.
Sanırım en kısa çözüm bu..
=ETOPLA(B2:$B$11;”*”&”Peynir”&”*”;C2:$C$11)
Tüm arkadaşlara selamlar..
=DÜŞEYARA(B3;B2:C11;2;0)+DÜŞEYARA(B4;B2:C11;2;0)+DÜŞEYARA(B5;B2:C11;2;YANLIŞ)+DÜŞEYARA(B7;B2:C11;2;0)+DÜŞEYARA(B11;B2:C11;2;0)
DAHA KISA YOLU VARDIR MUHTEMELEN.
Hayırlı Ramazanlar Mustafa Hocam. Böyle bir bölüm nerden aklınıza geldi bilmiyorum ama tek kelime ile müthiş… Umarım bu tip çok daha farklı aktivitelerle bizleri teşvik edersiniz. Gerçekten insan kullanmak zorunda kalmayınca bildiği şeyleri nerede nasıl kullanacağını veya hangi konularda eksik olduğunu bilemiyor. Tekrar teşekkürler…
Cavabım : =ETOPLA(B:B;”*Peynir*”;C:C).
=ETOPLA(B2:B11;”*”&”Peynir”&”*”;C2:C11)
=IF(INDEX($I$2:$I$7;MATCH(1;–ISNUMBER(SEARCH($I$2:$I$7;B2));0))=$E$1;C2;””)
=ÇOKETOPLA(C2:C11;B2:B11;”*Peynir*”)
=ETOPLA(B2:B11;”*peynir*”;C2:C11)
=ETOPLA(B2:B11;”*Peynir*”;C2:C11)
Sub Soru2()
For i = 2 To 11
If InStr(Cells(i, “b”).Value, “Peynir”) > 0 Then
Range(“d12”) = Range(“d12”) + Cells(i, “c”)
End If
Next i
End Sub