
Formula generik
=MIN(UNIQUE(range,0,1))
Ringkasan
Untuk mencari nilai unik minimum dalam satu set data, anda boleh menggunakan fungsi UNIK bersama dengan fungsi MIN. Dalam contoh di bawah, formula di E5 adalah:
=MIN(UNIQUE(data,0,1))
di mana "data" adalah julat bernama B5: B14.
Dalam versi Excel yang lebih lama, anda boleh menggunakan formula array berdasarkan fungsi MIN, IF, dan COUNTIF seperti yang dijelaskan di bawah.
Penjelasan
Tujuan dalam contoh ini adalah untuk mengembalikan nilai minimum yang unik, iaitu nilai minimum yang berlaku hanya sekali dalam data.
Fungsi UNIK, baru di Excel 365, akan mengembalikan senarai nilai unik dari sekumpulan data. Secara lalai, ini adalah senarai nilai yang berlaku satu atau beberapa kali dalam data.
UNIK mempunyai argumen ketiga pilihan yang disebut "just_once" yang akan mengehadkan hasil kepada nilai-nilai yang berlaku sekali hanya dalam data sumber. Untuk mengaktifkan ciri ini, argumen perlu ditetapkan ke BENAR atau 1.
Berfungsi dari dalam ke luar, fungsi UNIK dikonfigurasi seperti ini:
UNIQUE(data,0,1)
Untuk tatasusunan, kami menyediakan data julat bernama . Untuk argumen by_col, kami menggunakan sifar (0), kerana kami mahukan nilai unik mengikut baris, bukan lajur. Akhirnya, untuk just_once, kami memberikan 1, kerana kami hanya menginginkan nilai yang berlaku sekali dalam data sumber.
Dikonfigurasi dengan cara ini, UNIK mengembalikan 4 nilai yang muncul sekali sahaja:
(700;600;500;300) // result from unique
Array ini dikembalikan terus ke fungsi MIN, yang mengembalikan nilai minimum, 300, sebagai hasil akhir:
=MIN((700;600;500;300)) // returns 300
Array formula dengan COUNTIF
Sekiranya anda menggunakan versi Excel tanpa fungsi UNIK, anda dapat mencari nilai unik minimum dengan formula larik berdasarkan fungsi COUNTIF, MIN, dan IF.
(=MIN(IF(COUNTIF(data,data)=1,data)))
Ini adalah formula larik dan mesti dimasukkan dengan kawalan + shift + enter, kecuali di Excel 365.
Berfungsi dari dalam ke luar, fungsi COUNTIF digunakan untuk menghasilkan kiraan setiap nilai dalam data seperti ini:
COUNTIF(data,data) // count all values
Kerana terdapat 10 nilai dalam data julat bernama , COUNTIF mengembalikan pelbagai 10 hasil:
(2;1;1;2;1;2;2;2;1;2)
Susunan ini menyimpan kiraan setiap nilai. Seterusnya kita menguji array untuk nilai yang sama dengan 1
(2;1;1;2;1;2;2;2;1;2)=1
Sekali lagi, kami mendapat pelbagai dengan 10 hasil:
(FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE)
Setiap nilai BENAR sesuai dengan nilai dalam data sumber yang terjadi sekali sahaja. Array ini dihantar terus ke fungsi IF, yang menggunakannya seperti penapis. Hanya nilai dalam data yang berkaitan dengan BENAR menjadikannya dalam array yang dikembalikan oleh IF, semua nilai lain SALAH.
(FALSE;700;600;FALSE;500;FALSE;FALSE;FALSE;300;FALSE)
Susunan ini dikembalikan terus ke fungsi MIN yang secara automatik mengabaikan nilai logik dan mengembalikan nilai minimum yang tinggal, 300, sebagai hasil akhir.