KoŞullu Verİ Alma

Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Merhaba arkadaşlar size bir sorum olacak. Benim hazırlamış olduğum bir satın alma tablom var. Tarih sırasına göre tüm almış olduğum malları fiyat firma adı dövi şekli miktar gibi ayrıntı şeklinde kayıt ediyorum. toplam 900 e yakın kayıt var ve benim aldığım hammadde cinsi yaklaşık 170 adet. Ben bu 170 adet ürün ismini başka bir sayfada A sütununa sıraladım. Yapmak istediğimi Örneğin X hammaddesi adı A1 hücresinde yazılı B1, B2, B3 ... hücrelere X hammaddesini alış tarihine göre otomatik yazsın. Ben genelde verileri İndis ve kaçıncı formül lerle çekiyorum ama burda işin işine tarih girince çözüm üretemedim yardımlarınızı bekliyorum.

Not: =İNDİS(ALIŞLAR!A:S;KAÇINCI(ANALİZ!A2;ALIŞLAR!D:D;0);KAÇINCI(ALIŞLAR!I1;ALIŞLAR!1:1;0)) bu formülle sadece veriler arasında o üründen 5 tane alınmış ama bana ilk değeri gösteriyor. yani bu formülle 1. alış geliyor bana 2. 3. 4. alışlar lazım bunu taploda görmeliyim fiyat değişikliği için.
 
Son düzenleme:

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Dosyanızdaki C2 hücresine aşağıdaki formülü kopyalayın. Daha sonra bu formülü diğer hücrelere sürükleyerek çoğaltın.

=TOPLA.ÇARPIM((Veri!$B$2:$B$31=$A2)*(GÜN(Veri!$A$2:$A$31)=C$1)*(Veri!$C$2:$C$31))
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
dENEDİM LEVENT BEY AMA OLMUYOR. BİRDE BU FORMÜLÜ KISACA BİR AÇIKLARSANIZ MEMNUN OLURUM.
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Ekli dosyayı inceleyin. Çok kriterli aramalarda TOPLA.ÇARPIM fonksiyonu çok faydalı olmaktadır. Verdiğim fonksiyondaki her parantez arası bir koşulu ifade eder. Birinci parantez Veri sayfasındaki B sütununda A2 deki ürün adını arar, ikinci parantez, A sütununda C1 hücresindeki günü arar ve üçüncü parantezde C sütununda ilk iki parantezdeki kriterlere uyan sonuçların toplamını getirir.
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
TeŞekkÜr Ederİm Ama Bİr YanliŞ Anlama Oldu Benİm Örnekte VerdİĞİm Bİr Aylik Gİbİ GÖzÜkmÜŞ Ama Benİm Taplom 18 Aylik Şu An Ve Artacak Devamli Üstekİ 1,2,3 Numaralari GÜnÜ İfade EtmİŞ Zİzİn Örnekte Ama Ben Onu 1. AliŞim 2. AliŞim Şeklİnde Yaptim Dİkkat Ettİysenİz Toplam Da 2 Yilda Bİr ÜrÜn İÇİn 30 Seferden Fazla AliŞ Yapmiyoruz. Bu ÖrneĞİ Uygulamaya Uyarlarsam Bana SÜtÜn Yetmez. İnŞallah Demek İstedİĞİmİ AnlamiŞsinizdir. Bu ÖrneĞİnİz Çook GÜzel OlmuŞ. Şİmdİ Bana Yardimci OlabİleceĞİnİz BaŞka Bİr ÇÖzÜm Varmi Acaba
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bu durumda size VBA ile bir çözüm üreteceğim. Ekli dosyayı inceleyin. Ama sorunuz fonksiyonlarlada çözülebilir, bu konuda da arkadaşlarımız bir örnek hazırlarlar umarım.

Kod:
Sub listele()
Set s1 = Sheets("veri")
Set s2 = Sheets("analiz")
For a = 2 To s2.[b65536].End(3).Row
For b = 1 To s2.Cells(a, "b")
adr = "b" & sat + 1 & ":b65536"
sat = WorksheetFunction.Match(s2.Cells(a, "a"), s1.Range(adr), 0) + sat
s2.Cells(a, b + 2) = s1.Cells(sat, "c")
Next
sat = 0
Next
End Sub
 
Katılım
27 Ekim 2005
Mesajlar
108
Excel Vers. ve Dili
Excel 2003 - Türkçe
Çook teşekkür ederim
 
Üst