SUMPRODUCT ile ilgili basit formül

Katılım
13 Eylül 2006
Mesajlar
35
Excel Vers. ve Dili
Excel 2007
ingilizce
Selam arkadaşlar,

Eminim buna benzer bir soru sorulmuştur ama bulamadım, bulduklarım da işimi görmedi,

sorum şu şekilde, ekte dosyada görüldüğü üzere Sheet 1 de veriler mevcut, benim istediğim sheet 2 ye Sheet1 deki "B" sutunun da olan değerlere sahip "C" sutundakilerin toplamanı Sheet2 ye yazdırmak, ve Sheet2 de Sheet1 deki "B" sutununda hangi değeri gösterdiğini de yazacak, ekte dosyada 2 tane örnek yaptım tabi ben formülsüz yaptım, Sheet2 de bu yaptığımı hangi formül ile yapabiliriz.

Teşekkür ederim.

Bu arada SUMPRODUCT diye başlık attım ama o olmaya da bilir tabi, aklıma o gelmişti.
 
Son düzenleme:

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Aşağıdaki şekilde deneyin.
Kod:
=ETOPLA(Sheet1!B:B;Sheet2!A1;Sheet1!C:C)
 
Katılım
13 Eylül 2006
Mesajlar
35
Excel Vers. ve Dili
Excel 2007
ingilizce
Teşekkür ederim, bu formülle sheet 2 deki "B" sutununu yazdırabiliyoruz, peki sheet2 de "A" sutunu da otomatik olarak yazdırabilir miyim?
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Sayın sathaner, ne yapmak istediğinizi bir örnekle açıklar mısınız?
 
Katılım
13 Eylül 2006
Mesajlar
35
Excel Vers. ve Dili
Excel 2007
ingilizce
Şöyle açıklayayım,

Sizin verdiğiniz formülü Sheet2 de "B" sutununa yazıyoruz, "A" sutunudaki değere göre B'ye Sheet1 deki toplamını alıyor, bunda sorun yok, ama A sutunundaki değeri manuel olarak giriyoruz, yani ekte dosyada görünen A sutunundaki değerleri de formül ile yazdırabilirmiyiz?

biraz daha açarsam, Sheet1 deki "B" sutununda bulunan değerleri Sheet2 de "A" sutununa tek olarak yazdırmak istiyorum.

umarım anlatabilmişimdir, ilginiz için teşekkür ederim.
 
Son düzenleme:

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,712
Excel Vers. ve Dili
Excel 2019 Türkçe
Formüllü çözümü olması gerek ama ben size kod ile bir çözüm buldum.

Kod:
Sub tek()
son = Sayfa1.[b65536].End(3).Row
For i = 2 To son
say = WorksheetFunction.CountIf(Sayfa1.Range("b" & i + 1 & ":" & "b" & son), Sayfa1.Cells(i, 2))

If say = 0 Then
k = k + 1
Cells(k, "a") = Sayfa1.Cells(i, 2)
End If
Next
End Sub
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
Şöyle açıklayayım,

Sizin verdiğiniz formülü Sheet2 de "B" sutununa yazıyoruz, "A" sutunudaki değere göre B'ye Sheet1 deki toplamını alıyor, bunda sorun yok, ama A sutunundaki değeri manuel olarak giriyoruz, yani ekte dosyada görünen A sutunundaki değerleri de formül ile yazdırabilirmiyiz?

biraz daha açarsam, Sheet1 deki "B" sutununda bulunan değerleri Sheet2 de "A" sutununa tek olarak yazdırmak istiyorum.

umarım anlatabilmişimdir, ilginiz için teşekkür ederim.
Dosyanız ekte.
.
 
Katılım
13 Eylül 2006
Mesajlar
35
Excel Vers. ve Dili
Excel 2007
ingilizce
@hamitcan ilgin için teşekkür ederim, kodu kullanamadım, sanırım excel im ingilizce olduğundan dolayı.

@yurttas size de çok teşekkür ederim, yapmış olduğunuz dosya işimi görecek, hala formülü anlamaya çalışıyorum :)
 
Katılım
13 Eylül 2006
Mesajlar
35
Excel Vers. ve Dili
Excel 2007
ingilizce
@yurttas üstad,

Sheet1 deki "E" sutunudaki formülleri B101 e kadar yapmışın, ne kadar uğraştursam onu değiştiremedim, bu formülü 1000 falan nasıl yaparım acaba?

tekrar teşekkür ederim.
 

Merhum İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,094
Excel Vers. ve Dili
Excel, 365 - İngilizce
E2'deki formülü:

=IF(SUMPRODUCT((B2:B1000<>"")*ISERROR(MATCH(B2:B1000;0)))<>0;INDEX(B2:B1000;MATCH(TRUE;ISERROR(IF(ISBLANK(B2:B1000);FALSE;MATCH(B2:B1000;;0)));0);1);"")

Yap&#305;p, CTRL+SHIFT'i bas&#305;l&#305; tutarken ENTER ile girin. Form&#252;l:

{=IF(SUMPRODUCT((B2:B1000<>"")*ISERROR(MATCH(B2:B1000;0)))<>0;INDEX(B2:B1000;MATCH(TRUE;ISERROR(IF(ISBLANK(B2:B1000);FALSE;MATCH(B2:B1000;;0)));0);1);"")}

&#351;eklini alacakt&#305;r.

E3 h&#252;cresine:

=IF(SUMPRODUCT(($B$2:$B$1000<>"")*ISERROR(MATCH($B$2:$B$1000;$E$2:E2;0)))<>0;INDEX($B$2:$B$1000;MATCH(TRUE;ISERROR(IF(ISBLANK($B$2:$B$1000);FALSE;MATCH($B$2:$B$1000;$E$2:$E2;0)));0);1);"")

girip, CTRL+SHIFT'i bas&#305;l&#305; tutarken, ENTER ile girin. Form&#252;l:

{=IF(SUMPRODUCT(($B$2:$B$1000<>"")*ISERROR(MATCH($B$2:$B$1000;$E$2:E2;0)))<>0;INDEX($B$2:$B$1000;MATCH(TRUE;ISERROR(IF(ISBLANK($B$2:$B$1000);FALSE;MATCH($B$2:$B$1000;$E$2:$E2;0)));0);1);"")}

&#351;eklini ald&#305;ktan sonra a&#351;a&#287;&#305;ya do&#287;ru istedi&#287;iniz kadar kopyalay&#305;n.


NOT:{} i&#351;aretlerini elle girerseniz form&#252;l &#231;al&#305;&#351;maz.


.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,900
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Bende farklı bir örnek ekleyeyim kullanıcı tanımlı ve fonksiyonludur

Sheet2'deki sarı alan Kullanıcı Tanımlı Fonksiyon ile mavi alan ise fonksiyonlar ile yapılmıştır.

Örnek ektedir.
 
Üst