Excel formülü: Bir sonraki planlanmış etkinliği alın -

İçindekiler

Genel formül

(=MIN(IF((range>=TODAY()),range)))

Özet

Tarihli olaylar listesinden bir sonraki planlanmış olayı almak için, sonraki tarihi bulmak için MIN ve BUGÜN işlevlerine dayalı bir dizi formülü ve etkinliği o tarihte görüntülemek için DİZİN ve KAÇINCI kullanabilirsiniz. Gösterilen örnekte, G6'daki formül şöyledir:

(=MIN(IF((date>=TODAY()),date)))

Burada "tarih", D5: D14 adlı aralıktır.

Not: Bu bir dizi formülüdür ve Control + Shift + Enter ile girilmelidir.

Açıklama

Çözümün ilk bölümü, bugünün tarihine göre "sonraki tarihi" bulmak için MIN ve BUGÜN işlevlerini kullanır. Bu, tarihleri ​​EĞER işlevi aracılığıyla filtreleyerek yapılır:

IF((date>=TODAY()),date)

Mantıksal test bir DOĞRU / YANLIŞ değerler dizisi oluşturur; burada DOĞRU, bugüne eşit veya daha büyük tarihlere karşılık gelir:

(FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE)

Bir sonuç DOĞRU olduğunda, tarih, EĞER tarafından döndürülen diziye geçirilir. Bir sonuç YANLIŞ olduğunda, tarih boole YANLIŞ ile değiştirilir. IF işlevi aşağıdaki diziyi MIN olarak döndürür:

(FALSE;FALSE;FALSE;43371;43385;43399;43413;43427;43441;43455)

MİN işlevi daha sonra YANLIŞ değerleri yok sayar ve Excel'in tarih sisteminde 28 Eylül 2018 tarihi olan en küçük tarih değerini (43371) döndürür.

Film adını almak

"Sonraki tarih" ile ilişkili filmi görüntülemek için INDEX ve MATCH kullanıyoruz:

=INDEX(movie,MATCH(G6,date,0))

İÇİNDEKİLER MATCH, tarihler listesinde G6'daki tarihin konumunu bulur. Örnekte 4 olan bu konum, satır numarası olarak INDEX'e döndürülür:

=INDEX(movie,4)

ve INDEX filmi bu pozisyonda döndürür, "Kara Şövalye".

Hepsi bir formülde

Sonraki Filmi tek bir formülde döndürmek için şu dizi formülünü kullanabilirsiniz:

(=INDEX(movie,MATCH(MIN(IF((date>=TODAY()),date)),date,0)))

MINIFS ile

Excel'in daha yeni bir sürümüne sahipseniz, G6'daki dizi formülü yerine MINIFS işlevini kullanabilirsiniz:

=MINIFS(date,date,">="&TODAY())

MINIFS, Excel 2016'da Office 365 aracılığıyla tanıtıldı.

Hataları işleme

Bu sayfadaki formül, olaylar tarihe göre sıralanmadığında bile çalışacaktır. Ancak yaklaşan tarih yoksa, MIN işlevi hata yerine sıfır döndürür. Bu, G6'da "0-Ocak-00" tarihi olarak görüntülenecek ve INDEX ve KAÇINCI formülü bir #YOK hatası atacaktır, çünkü değer alınacak sıfırıncı satır yoktur. Bu hatayı tuzağa düşürmek için, MIN işlevini KÜÇÜK işleviyle değiştirebilir, ardından tüm formülü EĞERHATA'ya şu şekilde kaydırabilirsiniz:

=(IFERROR(SMALL(IF((date>=TODAY()),date),1),"None found"))

MIN'den farklı olarak, KÜÇÜK işlevi bir değer bulunmadığında bir hata atar, bu nedenle hatayı yönetmek için EĞERHATA kullanılabilir.

Ilginç makaleler...