(Çözüldü.) Benzersiz değerleri sayma hakkında

Katılım
6 Haziran 2009
Mesajlar
39
Excel Vers. ve Dili
2003 & 2010 Türkçe
Merhabalar;

Stok ürünlerini tuttuğum bir dosyamda aşağıdaki formülü kullanıyordum.

Kod:
=EĞERHATA(SAYIYAÇEVİR(SAYIDÜZENLE(EĞER(EĞERHATA(DÜŞEYARA(D4;D$3:D3;1;YANLIŞ);TOPLA.ÇARPIM((D$3:D3<>"")/EĞERSAY(D$3:D3;D$3:D3&"")))=D4;"";EĞERHATA(DÜŞEYARA(D4;D$3:D3;1;YANLIŞ);TOPLA.ÇARPIM((D$3:D3<>"")/EĞERSAY(D$3:D3;D$3:D3&""))));0;DOĞRU));"")
Amacım formül ile barkod oluşturduğum D sütunundaki farklı değerleri belirleyip başka bir sayfada da buradaki sonuç

(1. Barkod yani 1. farklı ürün stok miktar durumu
2. Barkod yani 2. farklı ürün stok miktar durumu gibi özet sayfada bunları hesaplamaya çalışıyordum.)

numarasından etopla ile özet toplam stok listesini hesaplatıyordum. Bu formülü işçemci ve ram kaynaklarını daha az tüketebilecek şekilde nasıl dizayn edebilirim acaba ?

Alternatif olarak aşağıdaki şekilde bir deneme yaptım fakat sonuç yine aynı. Tablom yaklaşık 9500 satır.

Kod:
=EĞER(EĞERSAY(D$3:D9499;D9499)>1;"";BAĞ_DEĞ_SAY(C$3:C9498)+1)
Sakman26 ya yardımlarından dolayı teşekkürler. Konu 7. mesajda çözüldü.
 
Son düzenleme:

programer

Altın Üye
Katılım
26 Mayıs 2005
Mesajlar
604
Excel Vers. ve Dili
Office 2022 - Türkçe
Altın Üyelik Bitiş Tarihi
16-03-2025
Örnek bir dosya eklemeniz mümkünmü.
 

Ömer BARAN

Uzman
Katılım
8 Mart 2011
Mesajlar
12,997
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.
Merhaba.

Önce Detaylı Stok sayfasında C sütununda kullandığınız formüle ilişkin önerim olsun.
C4 hücresindeki formülü aşağıdaki ile değiştirebilirsiniz.
(maksat D sütunundaki farklı veri adetini saymak)

Kod:
=EĞER(D4="";"";EĞER(EĞERSAY($D$4:D4;D4)=1;MAK($C$3:C3)+1;""))
Kullanılan sayma/toplama gibi formüllerde, formüllerin güncellenmesinden kurtulmak için veri aralığı,
ya sütunun tümünü kapsayacak şekilde ya da muhtemel en yüksek satır numarası tahmini (siz 1000008 kullanmışsınız) üzerine kurulur.

Bunun yerine sonsat adını kullanarak AD TANIMLAMA ile bir AD oluşturup formüllerde bunu kullanmakta yarar var.

Aklıma ilk gelen aşağıdaki gibi bir çözümdür.

FORMÜLLER -> AD TANIMLAMA kısmında, sonsat olarak AD verip, bu ADın formül kısmına
=KAÇINCI("ZZZ";'Detaylı Stok'!$B:$B;1)
formülünü uygulayıp işlemi onaylayın.

Sonra da örneğin Etiket Bandıl sayfası A5 hücresindeki formülü aşağıdaki şekilde değiştirin.
.
Kod:
=DÜŞEYARA($B$11;[B][COLOR="Blue"]DOLAYLI("'Detaylı Stok'!F4:I"&[COLOR="Red"]sonsat[/COLOR])[/COLOR][/B];4;YANLIŞ)
Örnek belgenize göre sonsat değişkeni 867 değerini alır ve artık formüllerinizde
1.000.000 satırda arama/sayma yapmak yerine 867 satır üzerinden işlem yapabilirsiniz
ve bu da size hız/verim artışı olarak fayda sağlar.
.

Diğer formüllerde de benzer düzenlemeyi yaparsınız.
 
Katılım
6 Haziran 2009
Mesajlar
39
Excel Vers. ve Dili
2003 & 2010 Türkçe
selam,
sorunuzdan benzersizlerin listelenmesini anlıyorum.
makro ile çözüm için eki inceleyiniz...

link : http://s6.dosya.tc/server7/s3hmfx/Plaka_Stogu1.rar.html
Sakman üstad makro konusunda henüz bilgi sahibi değilim. Sizden;

"Detaylı Stok" sayfasındaki C sütunundaki işlevi yerine getirebilecek bir makro yazmanızı rica edeblir miyim. Bu makro sayfa açılışında otomatik çalışsın.
"Detaylı Stok" sayfası içine yine bir buton ekleyerek makroyu çalıştır kaydet ve çık yapabilir isek dosya hem açıldığında hemde buton üzerinden kaydediliğinde çalışır.

Bana bu konuda yardımcı olur musunuz rica etsem yada yol gösterebilir misiniz nasıl yapacağım.
 
Katılım
31 Ocak 2012
Mesajlar
2,430
Excel Vers. ve Dili
Excel 2010 , Türkçe
Altın Üyelik Bitiş Tarihi
24.01.2019
rica ediyorum..
kolay gelsin..
 
Katılım
6 Haziran 2009
Mesajlar
39
Excel Vers. ve Dili
2003 & 2010 Türkçe
Merhabalar;

Eski konuyu tekrar canlandırıyorum ama hazırlamış ve sayenizde kullanılabilir hale dönmüş olan tabloyu acaba excell de mi kullanmak mantıklı yoksa acsess gibi bir veri tabanında mı kullanmak mantıklı acaba? Bu konuda siz değerli duayenlerin fikrini alabilir miyim acaba ?
 
Üst