Çözüldü Seçilen Verinin En Alttaki Değerini Alması

mcexrem

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhabalar,

Dosyamın İZİN FORMU sayfasında D5 hücresine seçtiğim personelin bilgilerini İZİN KULLANIMI sayfasından almaktadır ama aynı personelin bir kaç izni olduğu için son kullandığı izni değil ilk kullandığı izni yansıtmaktadır. Son izni seçmesi için yardımcı olabilir misiniz.

NOT: Eklenen dosyadaki özel bilgiler gerçeği yansıtmamaktadır. Değiştirilerek eklenmiştir.
 

Ekli dosyalar

Selamlar,
Şunları söylemek gerekebilir.
** İzin Başlangıç tarihleri (dokumanınızdaki E kolonu) sıralı şekilde gidiyorsa, yani aranılan personele ait izin başlangıç tarihleri küçükten büyüğe sıralı ise, SON değeri yazdırılabilir. Bu durumda SON değer daima izine çıkılan en son tarih olacaktır.
** Eğer tarihler karışık sıralı olabilirse, yani aranılan kişiye ait izin tarihleri bazen büyük tarih önde, bazen sonda gibi ise, aranılan kişiye ait tarihlerin en BÜYÜK olanının bulunması gerekecektir.
** Her iki durumda da, En BÜYÜK tarihin arattırılması kesin çözümü verecektir.

Office 2019 ve Office 365 için ÇOKEĞERMAK işlevi kullanılabilir.
=ÇOKEĞERMAK('İZİN KULLANIMI'!E:E;'İZİN KULLANIMI'!C:C;D5)

Eğer Office2019 öncesi formül gerekecekse,
Önerim,
Ya Dinamik alan kullanın ve komple sütunlarda arattırma yapmayın. Komple sütunlarda arattırma yapmak, hesaplmalarda yavaşlamalara / kasılmalara neden olabilecektir.
Ya da İZİN KULLANIM sayfasını Tablo biçimlendirmesi şeklinde planlayın ve formülleri bu biçime göre yazın.

Dinamik Alanlar için Ad Tanımlaması yapılırsa (Formüller >>>Ad Yöneticisi >>>Yeni)
k ad tanımlaması yapın. (Listedeki satır adedinin, E kolonuna göre hesaplanması) (E kolonunda tarihler olduğundan SAYIdır)
Formülü
=KAÇINCI(9^99;'İZİN KULLANIMI'!$E$2:$E$1000000)
Personel kolonu için Pers Ad tanımlaması
Pers
=KAYDIR('İZİN KULLANIMI'!$C$2;;;k;1)
ve İzin Başlama kolonu için izinBas ad tanımlaması
izinBas
=KAYDIR('İZİN KULLANIMI'!$E$2;;;k;1)

İZİN Formu Sayfası D11 hücresine DİZİ Formül olarak
=MAK(EĞER(Pers=D5;izinBas))
formülünü yazabilirsiniz.

Yok, ad tanımlamaları yapmayayım dinamik alan olmadan formüle edeyim derseniz
=MAK(EĞER('İZİN KULLANIMI'!C2:C9=D5;'İZİN KULLANIMI'!E2:E9))
DİZİ formülünü yazabilirsiniz.

Not : Tarihler sıralıdır. Ben SON yazılan Tarihi yazdırayım derseniz
=ARA(2;1/(Pers=D5);izinBas)
formülünü kullanabilirsiniz.
Dinmik alan ad tanımlamaları olmayacaksa da
=ARA(2;1/('İZİN KULLANIMI'!C2:C9=D5);'İZİN KULLANIMI'!E2:E9)
şeklinde yazılabilir.
 
Çok teşekkür ederim.

Yazmış olduğunuz

=ÇOKEĞERMAK('İZİN KULLANIMI'!E:E;'İZİN KULLANIMI'!C:C;D5) formülü sorunumu çözdü.

ilgi ve detaylı bilgilendirmeniz için ayrıca teşekkür ederim.
 
Selamlar,
Şunları söylemek gerekebilir.
** İzin Başlangıç tarihleri (dokumanınızdaki E kolonu) sıralı şekilde gidiyorsa, yani aranılan personele ait izin başlangıç tarihleri küçükten büyüğe sıralı ise, SON değeri yazdırılabilir. Bu durumda SON değer daima izine çıkılan en son tarih olacaktır.
** Eğer tarihler karışık sıralı olabilirse, yani aranılan kişiye ait izin tarihleri bazen büyük tarih önde, bazen sonda gibi ise, aranılan kişiye ait tarihlerin en BÜYÜK olanının bulunması gerekecektir.
** Her iki durumda da, En BÜYÜK tarihin arattırılması kesin çözümü verecektir.

Office 2019 ve Office 365 için ÇOKEĞERMAK işlevi kullanılabilir.
=ÇOKEĞERMAK('İZİN KULLANIMI'!E:E;'İZİN KULLANIMI'!C:C;D5)

Eğer Office2019 öncesi formül gerekecekse,
Önerim,
Ya Dinamik alan kullanın ve komple sütunlarda arattırma yapmayın. Komple sütunlarda arattırma yapmak, hesaplmalarda yavaşlamalara / kasılmalara neden olabilecektir.
Ya da İZİN KULLANIM sayfasını Tablo biçimlendirmesi şeklinde planlayın ve formülleri bu biçime göre yazın.

Dinamik Alanlar için Ad Tanımlaması yapılırsa (Formüller >>>Ad Yöneticisi >>>Yeni)
k ad tanımlaması yapın. (Listedeki satır adedinin, E kolonuna göre hesaplanması) (E kolonunda tarihler olduğundan SAYIdır)
Formülü
=KAÇINCI(9^99;'İZİN KULLANIMI'!$E$2:$E$1000000)
Personel kolonu için Pers Ad tanımlaması
Pers
=KAYDIR('İZİN KULLANIMI'!$C$2;;;k;1)
ve İzin Başlama kolonu için izinBas ad tanımlaması
izinBas
=KAYDIR('İZİN KULLANIMI'!$E$2;;;k;1)

İZİN Formu Sayfası D11 hücresine DİZİ Formül olarak
=MAK(EĞER(Pers=D5;izinBas))
formülünü yazabilirsiniz.

Yok, ad tanımlamaları yapmayayım dinamik alan olmadan formüle edeyim derseniz
=MAK(EĞER('İZİN KULLANIMI'!C2:C9=D5;'İZİN KULLANIMI'!E2:E9))
DİZİ formülünü yazabilirsiniz.

Not : Tarihler sıralıdır. Ben SON yazılan Tarihi yazdırayım derseniz
=ARA(2;1/(Pers=D5);izinBas)
formülünü kullanabilirsiniz.
Dinmik alan ad tanımlamaları olmayacaksa da
=ARA(2;1/('İZİN KULLANIMI'!C2:C9=D5);'İZİN KULLANIMI'!E2:E9)
şeklinde yazılabilir.
Sayın #52779
ÇOMEĞERMAK haricinde çözüm mümkün mü? Excel 2003 için.
 
Selamlar,

Eğer Office2019 öncesi formül gerekecekse,
Mesajımın içeriğinde, Office2019 öncesi formülleri de yazmaya çalışmıştım.

Eğer ad tanımlamaları yaparak dinamik alanlara formül uygulayacaksanız,
k ad tanımlaması için
=KAÇINCI(9^99;'İZİN KULLANIMI'!$E$2:$E$1000000)
formülündeki 1000000 yerine Excel 2003 de 65536 satır olduğundan 65000 yazabilirsiniz

Pers ve izinBas ad tanımlamalarını da yapıp
İZİN Formu Sayfası D11 hücresine DİZİ Formül olarak
=MAK(EĞER(Pers=D5;izinBas))
formülünü yazabilirsiniz.

Yok, ad tanımlamaları yapmayayım dinamik alan olmadan formüle edeyim derseniz
=MAK(EĞER('İZİN KULLANIMI'!C2:C9=D5;'İZİN KULLANIMI'!E2:E9))
DİZİ formülünü yazabilirsiniz.
 
Konuyu başlatan
Normal Üye
Katılım
Konu Bilgi
Durum
Çözüldü 
Forum
Excel Formül Soruları
Başlangıç tarihi
Son yanıt tarihi
Cevaplar
6
Üst