Seçime uyan verilerin sayısına ulaşmak

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
İyi Akşamlar Değerli Forum Üyeleri,

Bu bölüme uzun süredir soru sormuyordum. Bir çalışma ile uğraşırken bu bölüme uygun olabileceğini düşündüm.

Konuyla ilgili alternatif cevapların iyi bir beyin fırtınası olacağını düşünüyorum.

Gelelim soruma;

Excel sayfalarında birkaç sütundan oluşan benzer tablolarım var.
Ana sayfamda belirlediğim sütunlardaki verilerden istediklerimi seçerek, seçime uyan kayıtların sayısını öğrenmek istiyorum. Seçim yaparken bir kısıtlama yoktur. 3 kriteri seçebileceğim gibi tek kriterde seçebilirim. Uygulanacak çözümün her şekilde sonuç vermesi gerekiyor.

Örnek dosya ektedir.
 

Ekli dosyalar

1Al2Ver

Altın Üye
Katılım
5 Kasım 2007
Mesajlar
4,708
Excel Vers. ve Dili
64 Bit TR - Microsoft Office 365 - Win11 Home
Altın Üyelik Bitiş Tarihi
04-01-2026
Merhaba,

Size uygun bir çözüm mü bilemedim ama basit bir yöntemle oldu sanırım.
 

Ekli dosyalar

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
13,002
Excel Vers. ve Dili
Office 2013 ( 32 bit ) TÜRKÇE
Altın Üyelik Bitiş Tarihi
(18.03.2020) - Uzman olduğu için tarih geçersiz oldu.
Merhabalar Sayın AYHAN.

Ben olsam (makro olayına hakim olmadığımdan formül ile çözüm bulmak için;
BLOK sayfalarının F3 hücrelerine aşağıdaki formülü uygular ve aşağı doğru listeler boyunca kopyalardım.
Kod:
=EĞER(EĞER(ÖZET!$B$2<>"";D3;"")&EĞER(ÖZET!$B$3<>"";C3;"")&EĞER(ÖZET!$B$4<>"";E3;"")=EĞER(ÖZET!$B$2<>"";ÖZET!$B$2;"")&EĞER(ÖZET!$B$3<>"";ÖZET!$B$3;"")&EĞER(ÖZET!$B$4<>"";ÖZET!$B$4;"");MAK($F$2:F2)+1;"")
Sonra da ÖZET sayfasında da E2 hücresine;
Kod:
=MAK(DOLAYLI(E$1&"!$F$3:$F$9"))
formülünü uygulayıp sağa doğru çoğaltırdım.
Yanlış anlamadıysam bu şekilde sonuç alınabiliyor.
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Değerli Arkadaşlar,

Amacımız yardımcı alan kullanmadan direkt mümkün olduğunca kısa bir formülle çözüme ulaşmaktır.
 

İdris SERDAR

Moderatör
Yönetici
Katılım
21 Ekim 2005
Mesajlar
17,104
Excel Vers. ve Dili
Excel, 365 - İngilizce

Ekli dosyalar

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,598
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Korhan bey merhaba,

E2 hücresine,dizi formülüdür.

Kod:
=TOPLA.ÇARPIM(--(EĞER($B$4="";SATIR($1:$7)^0;DOLAYLI("'"&E1&"'!E3:E9")=$B$4))*(EĞER($B$3="";SATIR($1:$7)^0;DOLAYLI("'"&E1&"'!c3:c9")=$B$3))*(EĞER($B$2="";SATIR($1:$7)^0;DOLAYLI("'"&E1&"'!d3:d9")=$B$2)))
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,196
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba,

Veri düzenine bakınca aranan ölçütlerin satır sırasıyla, sayfadaki aradığımız verilerin sütun sıraları farklı. Yalnız veri içerikleri birbiriyle tamamen farklı olduğu için sıranın önemini gözardı ederek hesaplama yapabiliriz. Sonucu değiştirmeyecektir.

Dizi formülü:

Kod:
=TOPLA(--(DÇARP(EĞERSAY($B$2:$B$4;DOLAYLI("'"&E1&"'!C3:E9"))
 ;SATIR($B$2:$B$4)^0)=BAĞ_DEĞ_DOLU_SAY($B$2:$B$4)))
------------------------------------------------------------------------------

Eğer veri içerikleri benzerlik taşırsa yada sütunları birbirinden kopuksa, arama ölçütü ile aranan değerin sırasını düzenlemek formülü daha kullanışlı yapar. Değiştirme durumu yoksa aşağıdaki gibi basit mantıkla formülü yazabilirsiniz.

Aşağıdaki formülü tek sayfa varmış gibi yazdım, dolaylı eklemesini yapmadım.

Kod:
=TOPLA.ÇARPIM(--(('1.BLOK'!D3:D9=B2)+('1.BLOK'!C3:C9=B3)+('1.BLOK'!E3:E9=B4)
 =BAĞ_DEĞ_DOLU_SAY(B2:B4)))
.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba Değerli Arkadaşlar,

İdris bey sizin önerinizde otel adını silince formül sıfır değerini veriyor.

Sayın Kuvari sizin önerinizde olumlu sonuç alabiliyorum.

Ömer Bey sizin önerinizde olumlu sonuç veriyor ve oldukça kısa bir formül oldu.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayın Kuvari sizin önerinizde olumlu sonuç alabiliyorum. Fakat kriterlerden birisini silince formül hata veriyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Arkadaşlar,

Çözüm önerilerini tek dosyada topladım. İlgilenenler inceleyebilirler.

Soruyu foruma sormadan önce kendi kullandığım çözüm aşağıdaki gibidir.

Kod:
=EĞER(BAĞ_DEĞ_DOLU_SAY($B$2:$B$4)=0;0;TOPLA.ÇARPIM(--(EĞER($B$2="";"-";DOLAYLI("'"&E$1&"'!D3:D100"))&EĞER($B$3="";"-";DOLAYLI("'"&E$1&"'!C3:C100"))&EĞER($B$4="";"-";DOLAYLI("'"&E$1&"'!E3:E100"))=EĞER($B$2="";"-";$B$2)&EĞER($B$3="";"-";$B$3)&EĞER($B$4="";"-";$B$4))))
 

Ekli dosyalar

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,598
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Sayın Kuvari sizin önerinizde olumlu sonuç alabiliyorum. Fakat kriterlerden birisini silince formül hata veriyor.
Korhan bey merhaba,

Dolaylı formülündeki hücre aralığını arttırdığınızda satır fonksiyonundaki aralığıda arttırmak gerekir.

Kod:
=TOPLA.ÇARPIM(--(EĞER($B$4="";SATIR($1:$98)^0;DOLAYLI("'"&E1&"'!E3:E100")=$B$4))*(EĞER($B$3="";SATIR($1:$98)^0;DOLAYLI("'"&E1&"'!c3:c100")=$B$3))*(EĞER($B$2="";SATIR($1:$98)^0;DOLAYLI("'"&E1&"'!d3:d100")=$B$2)))
 
Son düzenleme:

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Haklısınız. Dikkatimden kaçmış.

Üstteki mesajımda ki dosyayı güncelliyorum.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,519
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Üstteki mesajımda ki dosyada hiçbir kriter seçimi yapılmadığında önerilen formüller hatalı sonuç veriyordu. Bu sorun giderilerek örnek çözüm dosyayı güncellenmiştir. İlgilenen üyelerimiz inceleyebilirler.
 
Üst