Formula Excel: Dapatkan acara dijadualkan seterusnya -

Isi kandungan

Formula generik

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

Ringkasan

Untuk mendapatkan acara yang dijadualkan seterusnya dari senarai acara dengan tarikh, anda boleh menggunakan formula susunan berdasarkan fungsi MIN dan HARI INI untuk mencari tarikh seterusnya, dan INDEX dan MATCH untuk memaparkan acara pada tarikh tersebut. Dalam contoh yang ditunjukkan, formula dalam G6 adalah:

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

Di mana "tarikh" adalah julat bernama D5: D14.

Catatan: ini adalah formula larik dan mesti dimasukkan dengan Control + Shift + Enter.

Penjelasan

Bahagian pertama penyelesaian menggunakan fungsi MIN dan HARI INI untuk mencari "tarikh seterusnya" berdasarkan tarikh hari ini. Ini dilakukan dengan menyaring tarikh melalui fungsi IF:

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

Uji logik menghasilkan pelbagai nilai BENAR / SALAH, di mana TRUE sepadan dengan tarikh yang lebih besar daripada atau sama dengan hari ini:

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

Apabila hasilnya BENAR, tarikh diteruskan ke dalam array yang dikembalikan oleh IF. Apabila hasilnya PALSU, tarikhnya digantikan dengan Boolean FALSE. Fungsi IF mengembalikan susunan berikut ke MIN:

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

Fungsi MIN kemudian mengabaikan nilai-nilai PALSU, dan mengembalikan nilai tarikh terkecil (43371), iaitu tarikh 28 September 2018 dalam sistem tarikh Excel.

Mendapatkan nama filem

Untuk memaparkan filem yang berkaitan dengan "tarikh seterusnya" ", kami menggunakan INDEX dan MATCH:

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

Di dalam INDEX, MATCH mencari kedudukan tarikh dalam G6 dalam senarai tarikh. Posisi ini, 4 dalam contoh, dikembalikan ke INDEX sebagai nombor baris:

=INDEX(movie,4)

dan INDEX mengembalikan filem pada kedudukan itu, "The Dark Knight".

Semua dalam satu formula

Untuk mengembalikan Filem seterusnya dalam satu formula, anda boleh menggunakan formula susunan ini:

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

Dengan MINIFS

Sekiranya anda mempunyai versi Excel yang lebih baru, anda boleh menggunakan fungsi MINIFS dan bukannya formula array di G6:

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

MINIFS diperkenalkan di Excel 2016 melalui Office 365.

Kesalahan pengendalian

Rumus di halaman ini akan berfungsi walaupun peristiwa tidak disusun mengikut tarikh. Namun, jika tidak ada tarikh yang akan datang, fungsi MIN akan kembali sifar dan bukannya kesalahan. Ini akan dipaparkan sebagai tarikh "0-Jan-00" di G6, dan formula INDEX dan MATCH akan menimbulkan ralat # N / A, kerana tidak ada baris sifar untuk mendapatkan nilai dari. Untuk memerangkap ralat ini, anda boleh mengganti MIN dengan fungsi KECIL, kemudian bungkus keseluruhan formula di IFERROR seperti ini:

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

Tidak seperti MIN, fungsi KECIL akan menimbulkan kesalahan apabila nilai tidak dijumpai, jadi IFERROR dapat digunakan untuk menguruskan kesalahan.

Artikel menarik...