• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Ardışık Tarihler ile ilgili Yardım

  • Konbuyu başlatan Konbuyu başlatan hbgny
  • Başlangıç tarihi Başlangıç tarihi

hbgny

Altın Üye
Katılım
28 Eylül 2005
Mesajlar
177
Excel Vers. ve Dili
Microsoft Excel Office 2013 Türkçe
Merhaba,
Bir tablom var. A kolonunda alt alta tarihler yazıyor. (01.01.-02.01-......31.01 şeklinde) B kolonunda ise ürün isimleri yazıyor. Her ürününde kendine ait bir sayfası var. Ben her ürünün sayfasındaki yere hangi tarihlerde yazılmış ise o tarihlerin gelmesini istiyorum. Yalnız şu şekilde olmasını istiyorum. Mesela 01.01.-02.01.-03.01-04.01.05.01 tarihleri karşısında yazan bir ürünü, kendi sayfasına a kolonuna 01.01 b kolonuna da 05.01 yazmasını istiyorum. Yani seri devam eden aradaki diğer tarihleri yazmayacak. Hazırlamış olduğum örnek bir dosyanın indirme linkini de veriyorum. Bu konuda yardımcı olursanız çok memnun olurum. Saygılarımla,

Dosya'nın indirme linki http://dosya.co/y5j06o0awct3/Soru.xlsx.html
 
Merhaba.

Öncelikle profilinizdeki Excel versiyon bilgisini güncellemenizi hatırlatmak isterim.
Eklediğiniz örnek belgenin uzantısından, 2003'ten daha sonraki bir versiyonu kullandığınız anlaşılıyor.


-- D4 hücresine (dizi formülü)
Kod:
=EĞERHATA(KÜÇÜK(EĞER($B$3:$B$33=D$2;EĞER(EĞER($B$3:$B$33<>$B$2:$B$32;$A$3:$A$33;"")<>"";EĞER($B$3:$B$33<>$B$2:$B$32;$A$3:$A$33;"")));SATIR()-3);"")
[SIZE="2"][COLOR="blue"]Formül [B]dizi formülü[/B] olduğundan hücreye [COLOR="Red"][B]CTRL+SHIFT+ENTER[/B][/COLOR] ile girilmelidir.
İşlem doğru yapılmışsa formül [B]kendiliğinden, [COLOR="red"]{[/COLOR]....[COLOR="red"]}[/COLOR][/B]  gibi köşeli parantez içine alınır.[/COLOR][/SIZE]
-- E4 hücresine
Kod:
=EĞER(D4="";"";D4+EĞERSAY(DOLAYLI("B"&GÜN(D4)+2&":B"&EĞER(D5="";GÜN(MAK($A$3:$A$33));GÜN(D5)-1)+2);D$2)-1)
-- F4 hücresine
Kod:
=EĞER(D4="";"";E4-D4+1)
-- Formülleri uyguladıktan sonra aşağı doğru kopyalyın.
-- Son olarak da D4:F16 hücre aralığını kopyalayıp, H4:J16 ve L4:N16 hücre aralığına yapıştırın.
.
 
Merhaba.

Önceki cevabımda, örnek belgenizdeki satır/sütun yapısına göre formül cevapları vermiştim.

Bu formüllerin, herbir ürün için açılan sayfalara uygulanmış hali ekli belgede mevcut.
Belgeye buradan da erişebilirsiniz.

Not: Önceki cevabımda da belirtmiştim; forumdaki profil bilgilerinden
Excel versiyonuna ilişkin bilgiyi güncellemeyi bir kez daha hatırlatayım dedim.
.
 

Ekli dosyalar

Merhaba,

Alternatif olarak kullanılabilir.Dizi formülleridir.

Kod:
=KÜÇÜK(EĞER($B$3:$B$33=$D$2;EĞER(($B$3:$B$33<>$B$2:$B$32);$A$3:$A$33));SATIR(A1))

Kod:
İNDİS($A$3:$A$33;KAÇINCI(1;($A$3:$A$33>$D4)*($B$3:$B$33<>$D$2);0)-1)
 
Merhaba.

Öncelikle profilinizdeki Excel versiyon bilgisini güncellemenizi hatırlatmak isterim.
Eklediğiniz örnek belgenin uzantısından, 2003'ten daha sonraki bir versiyonu kullandığınız anlaşılıyor.


-- D4 hücresine (dizi formülü)
Kod:
=EĞERHATA(KÜÇÜK(EĞER($B$3:$B$33=D$2;EĞER(EĞER($B$3:$B$33<>$B$2:$B$32;$A$3:$A$33;"")<>"";EĞER($B$3:$B$33<>$B$2:$B$32;$A$3:$A$33;"")));SATIR()-3);"")
[SIZE="2"][COLOR="blue"]Formül [B]dizi formülü[/B] olduğundan hücreye [COLOR="Red"][B]CTRL+SHIFT+ENTER[/B][/COLOR] ile girilmelidir.
İşlem doğru yapılmışsa formül [B]kendiliğinden, [COLOR="red"]{[/COLOR]....[COLOR="red"]}[/COLOR][/B]  gibi köşeli parantez içine alınır.[/COLOR][/SIZE]
-- E4 hücresine
Kod:
=EĞER(D4="";"";D4+EĞERSAY(DOLAYLI("B"&GÜN(D4)+2&":B"&EĞER(D5="";GÜN(MAK($A$3:$A$33));GÜN(D5)-1)+2);D$2)-1)
-- F4 hücresine
Kod:
=EĞER(D4="";"";E4-D4+1)
-- Formülleri uyguladıktan sonra aşağı doğru kopyalyın.
-- Son olarak da D4:F16 hücre aralığını kopyalayıp, H4:J16 ve L4:N16 hücre aralığına yapıştırın.
.
Merhaba, profil bilgilerimi güncelledim. 2 çalışmanız içinde çok teşekkür ederim. Formüller işimi görüyor. Biraz anlamaya çalıştım ama pek çözemedim. İlk başta tüm alanı seçip, sonra alttan ve üstten kısaltarak bir daha seçmişsiniz. Burayı mümkünse biraz izah edebilir misiniz?
 
Merhaba,

Alternatif olarak kullanılabilir.Dizi formülleridir.

Kod:
=KÜÇÜK(EĞER($B$3:$B$33=$D$2;EĞER(($B$3:$B$33<>$B$2:$B$32);$A$3:$A$33));SATIR(A1))

Kod:
İNDİS($A$3:$A$33;KAÇINCI(1;($A$3:$A$33>$D4)*($B$3:$B$33<>$D$2);0)-1)
Merhaba, Cevabınız için çok teşekkür ederim. Formülünüz çalıştı. Sadece en son tarihi getirmiyor. Beyaz peynir 31.01 tarihini. Orası boş kalıyor. Sizin formüle Eğer hata fonksiyonunu ekledim. Boş çıkanlar yazmasın diye. Acaba o sırada formülde bir yanlışlık mı yapıyorum çözemedim.
 
Tekrar merhaba.

#4 numaralı cevap ekinde yer alan belgeyi kullanabilirsiniz. İstediğiniz gibi, listelemeler ürünlerin kendi sayfalarında yapılıyor.
.
 
Tekrar merhaba.

#4 numaralı cevap ekinde yer alan belgeyi kullanabilirsiniz. İstediğiniz gibi, listelemeler ürünlerin kendi sayfalarında yapılıyor.
.
Merhaba,
İkisi de çok güzel olmuş. Gönderdiğiniz ekteki formülleri kendi çalışmama uyarladım. Çok güzel çalışıyor. Ama biraz formülü anlamak istemiştim.
 
Karmaşık formülleri çözmek için;
formül içerisindeki işlevlerin herbirini (en içteki işlevden başlayarak) aynı satırda başka sütunlara uygulayıp,
ardından da kaynak verilerde değişiklikler yaparak bunların sonuçlarını gözlemlemeli, neyin neyi etkilediğini anlamaya çalışmalısınız.

Anlaşılması biraz güç olan formüller aslında dizi formülleridir.
Mevcut belgede kullanılan dizi formülüyle ilgili olarak kabaca, aşağıdaki şekilde işlem yaparak anlamaya çalışın derim.

Dizi formülünün içerisindeki KÜÇÜK işlevi parantezi içinde yer alan her bir EĞER işlevi kısmını aynı satırda olmak üzere
(örneğin; =EĞER(Sayfa1!$B$3:$B$33=$B$2;1;0) gibi) başka sütunlara
nomal formül olarak (ENTER ile giriş) uygulayın ve aşağı doğru liste boyunca kopyalayın.
Bu işlem sırasında örneğin $B$2 yerine Kaşar Peynir!$B$2 gibi sayfa adını da belirtecek şekilde işlem yapın.

Özetle; tüm eğer formülü uygulanmış sütunlarda koşula uyan satırlar, diğer sayfaya aktarılacak satırlar oluyor.
Dizi formülü; sütunlara uygulayıp, koşul kontrolü yapma işini kendi içerisinde yapıyor.
.
 
Azıcık dizi formüllerinden anlıyorum. Anladığım kadarıyla topla çarpım fonksiyonuna benziyor biraz. Benim çözemediğim kısmı EĞER($B$3:$B$33<>*******$B$2:$B$32*********;$A$3:$A$33;"") yıldızlı alanın içinde gösterdiğim yerdi. Burada b3 ile b33 arasındaki değer eşit değil ????? ise a3:a33 olsun gibi anlıyorum. Ama yıldızlı kısımdaki kriteri çözemedim.
 
Merhaba,
Tabloda biraz değişiklik yapmam gerekti. Aynı gün 2 farklı ürün yapılabiliyor. O yüzden aynı ürün peşpeşe günler yapılsa bile listede alt alta ismi gelmeyebiliyor. Birde ustasına göre de kriter eklemem gerekti. Bu konuda yardımcı olabilir misiniz?"

Örnek Dosya Adresi : http://s6.dosya.tc/server8/ae8fzc/Soru.xlsx.html
 
Yardımcı olabilir misiniz?
 
Lütfen, yardımlarınızı bekliyorum.
 
Takıldım kaldım. Lütfen, yardımlarınızı bekliyorum.
 
Tekrar merhaba.

Ekli belgedeki gibi olabilir.
Belgeye buradan da erişebilirsiniz.
.

Merhaba,

Elinize sağlık. Başlangıç ve bitiş tarihlerini aynı kolona almışsınız. Ama böyle olunca şöyle bir sıkıntı oluyor. Mesela ayın 1-2-3-4-5 inde Ahmet Usta kaşar peynir yapmış olsun. Rapor kısmında bütün tarihler yazıyor. Bunun şöyle olmasını istiyorum. başlangıç ve bitiş tarihini yazıp toplama 5 gün atmasını istiyorum. Bunu istememdeki sebep, bu tablo aylık değil yıllık olacak. Tek tek tarihleri yazarsa çok uzun oluyor. Bu şekilde formülünüzde nasıl bir değişiklik yaparak istediğim sonucu alabilirim?
 
Lütfen, yardımlarınızı bekliyorum.
 
Merhaba,
Forumu gezerken aşağıdaki konuda benim soruma benzerlik gördüm. Orada veriler kolonlara yazılıyor, benimkinde satırlara. 15. mesajda önerilen makroyu benim sayfaya uyarlayabilir misiniz? O zaman istediğim sonucu alabilirim gibi geldi bana.
Bahsettiğim link : http://www.excel.web.tr/f50/zet-tablo-t162021/sayfa2.html
 
Geri
Üst