Isi kandungan
Tutorial melihat cara mendapatkan nilai unik dalam Excel dengan menggunakan fungsi UNIK dan tatasusunan dinamik. Anda akan mempelajari formula mudah untuk mencari nilai unik dalam lajur atau baris, dalam berbilang lajur, berdasarkan syarat dan banyak lagi.
Dalam versi Excel sebelumnya, mengekstrak senarai unik nilai adalah satu cabaran yang sukar. Kami mempunyai artikel khas yang menunjukkan cara mencari unik yang berlaku sekali sahaja, mengekstrak semua item yang berbeza dalam senarai, mengabaikan tempat kosong dan banyak lagi. Setiap tugas memerlukan penggunaan gabungan beberapa fungsi dan formula tatasusunan berbilang baris yang hanya guru Excel boleh faham sepenuhnya.
Pengenalan fungsi UNIK dalam Excel 365 telah mengubah segala-galanya! Apa yang pernah menjadi sains roket menjadi semudah ABC. Kini, anda tidak perlu menjadi pakar formula untuk mendapatkan nilai unik daripada julat, berdasarkan satu atau berbilang kriteria dan menyusun keputusan dalam susunan abjad. Semuanya dilakukan dengan formula mudah yang semua orang boleh baca dan laraskan untuk keperluan anda sendiri.
Fungsi UNIK Excel
Fungsi UNIK dalam Excel mengembalikan senarai nilai unik daripada julat atau tatasusunan. Ia berfungsi dengan mana-mana jenis data: teks, nombor, tarikh, masa, dll.
Fungsi ini dikategorikan di bawah fungsi Tatasusunan Dinamik. Hasilnya ialah tatasusunan dinamik yang tumpah secara automatik ke dalam sel jiran secara menegak atau mendatar.
Sintaks Excel UNIQUEbeberapa ungkapan logik dalam argumen include bagi fungsi FILTER, setiap satunya mengembalikan tatasusunan nilai BENAR dan SALAH. Apabila tatasusunan ini dijumlahkan, item yang mempunyai satu atau lebih kriteria BENAR akan mempunyai 1 dan item yang kesemua kriterianya adalah SALAH akan mempunyai 0. Hasilnya, sebarang entri yang memenuhi mana-mana syarat tunggal menjadikannya masuk ke dalam tatasusunan yang diserahkan kepada UNIQUE.
Untuk mendapatkan maklumat lanjut, sila lihat PENAPIS dengan berbilang kriteria menggunakan logik ATAU.
Dapatkan nilai unik dalam Excel tanpa menghiraukan tempat kosong
Jika anda bekerja dengan set data yang mengandungi beberapa jurang, senarai unik yang diperoleh dengan formula biasa mungkin mempunyai sel kosong dan/atau nilai sifar. Ini berlaku kerana fungsi Excel UNIQUE direka untuk mengembalikan semua nilai berbeza dalam julat, termasuk kosong. Jadi, jika julat sumber anda mempunyai kedua-dua sifar dan sel kosong, senarai unik akan mengandungi 2 sifar, satu mewakili sel kosong dan satu lagi - nilai sifar itu sendiri. Selain itu, jika data sumber mengandungi rentetan kosong yang dikembalikan oleh beberapa formula, senarai uique juga akan menyertakan rentetan kosong ("") yang kelihatan seperti sel kosong secara visual:
Untuk mendapatkan senarai nilai unik tanpa kosong, ini yang anda perlu lakukan:
- Tapis sel kosong dan rentetan kosong dengan menggunakan fungsi FILTER.
- Gunakan fungsi UNIK untuk mengehadkan hasil kepada yang uniknilai sahaja.
Dalam bentuk generik, formula kelihatan seperti berikut:
UNIK(PENAPIS( julat, julat""))Dalam contoh ini, formula dalam D2 ialah:
=UNIQUE(FILTER(B2:B12, B2:B12""))
Hasilnya, Excel mengembalikan senarai nama unik tanpa sel kosong:
Nota. Sekiranya data asal mengandungi sifar , satu nilai sifar akan disertakan dalam senarai unik.
Cari nilai unik dalam lajur tertentu
Kadangkala anda mungkin mahu mengekstrak unik nilai daripada dua atau lebih lajur yang tidak bersebelahan antara satu sama lain. Kadangkala, anda juga mungkin mahu menyusun semula lajur dalam senarai yang terhasil. Kedua-dua tugas boleh dipenuhi dengan bantuan fungsi CHOOSE.
UNIK(CHOOSE({1,2,…}, julat1, julat2))Daripada jadual sampel kami , katakan anda ingin mendapatkan senarai pemenang berdasarkan nilai dalam lajur A dan C dan susun keputusan dalam susunan ini: pertama sukan (lajur C), dan kemudian nama ahli sukan (lajur A). Untuk melakukannya, kami membina formula ini:
=UNIQUE(CHOOSE({1,2}, C2:C10, A2:A10))
Dan dapatkan hasil berikut:
Bagaimana formula ini berfungsi:
Fungsi CHOOSE mengembalikan tatasusunan nilai 2 dimensi daripada lajur yang ditentukan. Dalam kes kami, ia juga menukar susunan lajur.
{"Bola Keranjang","Andrew"; "Bola Keranjang","Betty"; "Bola Tampar","David"; "Bola Keranjang","Andrew"; "Hoki","Andrew"; "Bola Sepak","Robert"; "Bola Tampar","David"; "Hoki","Andrew";"Bola Keranjang","David"}
Daripada tatasusunan di atas, fungsi UNIQUE mengembalikan senarai rekod unik.
Cari nilai unik dan kendalikan ralat
Formula UNIK kami telah membincangkan dalam tutorial ini berfungsi dengan sempurna... dengan syarat terdapat sekurang-kurangnya satu nilai yang memenuhi kriteria yang ditetapkan. Jika formula tidak menemui apa-apa, #CALC! ralat berlaku:
Untuk mengelakkan perkara ini berlaku, hanya bungkus formula anda dalam fungsi IFERROR.
Sebagai contoh, jika tiada nilai unik yang memenuhi kriteria adalah dijumpai, anda tidak boleh memaparkan apa-apa, iaitu rentetan kosong (""):
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Atau anda boleh memberitahu pengguna anda dengan jelas bahawa tiada hasil ditemui:
=IFERROR(UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Fungsi UNIK Excel tidak berfungsi
Seperti yang anda lihat, kemunculan fungsi UNIK telah menjadikan pencarian nilai unik dalam Excel sangat mudah. Jika secara tiba-tiba formula anda menghasilkan ralat, kemungkinan besar ia adalah salah satu daripada yang berikut.
#NAME? ralat
Berlaku jika anda menggunakan formula UNIK dalam versi Excel yang fungsi ini tidak disokong.
Pada masa ini, fungsi UNIK hanya tersedia dalam Excel 365 dan 2021. Jika anda mempunyai yang berbeza versi, anda mungkin menemui penyelesaian yang sesuai dalam tutorial ini: Bagaimana untuk mendapatkan nilai unik dalam Excel 2019, Excel 2016 dan lebih awal.
#NAME? ralat dalam versi yang disokong menunjukkan bahawa nama fungsi tersebut salah eja.
#SPILLralat
Berlaku jika satu atau lebih sel dalam julat tumpahan tidak kosong sepenuhnya.
Untuk membetulkan ralat, cuma kosongkan atau padamkan sel bukan kosong . Untuk melihat dengan tepat sel mana yang menghalang, klik penunjuk ralat, dan kemudian klik Pilih Sel Menghalang . Untuk maklumat lanjut, sila lihat #SPILL! ralat dalam Excel - punca dan pembetulan.
Begitulah cara mencari nilai unik dalam Excel. Saya mengucapkan terima kasih kerana membaca dan berharap dapat berjumpa anda di blog kami minggu hadapan!
Berlatih buku kerja untuk muat turun
Contoh formula nilai unik Excel (fail.xlsx)
fungsi adalah seperti berikut:UNIK(array, [by_col], [exactly_once])Di mana:
Array (diperlukan) - julat atau tatasusunan yang akan dikembalikan nilai unik.
By_col (pilihan) - nilai logik yang menunjukkan cara membandingkan data:
- BENAR - membandingkan data merentas lajur.
- SALAH atau ditinggalkan (lalai) - membandingkan data merentas baris.
Exactly_once (pilihan) - nilai logik yang mentakrifkan nilai yang dianggap unik:
- BENAR - mengembalikan nilai yang berlaku sekali sahaja, iaitu tanggapan pangkalan data unik.
- SALAH atau ditinggalkan (lalai) - mengembalikan semua nilai yang berbeza (berbeza) dalam julat atau tatasusunan.
Nota. Pada masa ini fungsi UNIQUE hanya tersedia dalam Excel untuk Microsoft 365 dan Excel 2021. Excel 2019, 2016 dan lebih awal tidak menyokong formula tatasusunan dinamik, jadi fungsi UNIQUE tidak tersedia dalam versi ini.
Formula UNIK asas dalam Excel
Di bawah ialah formula nilai unik Excel dalam bentuk termudahnya.
Matlamatnya adalah untuk mengekstrak senarai nama unik daripada julat B2:B10. Untuk ini, kami memasukkan formula berikut dalam D2:
=UNIQUE(B2:B10)
Sila ambil perhatian bahawa argumen ke-2 dan ke-3 ditinggalkan kerana lalai berfungsi dengan sempurna dalam kes kami - kami membandingkan baris dengan setiap lain dan ingin mengembalikan semua nama yang berbeza dalam julat.
Apabila anda menekan kekunci Enter untuk melengkapkan formula, Excel akankeluarkan nama pertama yang ditemui dalam D2 menumpahkan nama lain ke dalam sel di bawah. Hasilnya, anda mempunyai semua nilai unik dalam lajur:
Sekiranya data anda merentas lajur dari B2 hingga I2, tetapkan argumen ke-2 kepada TRUE untuk membandingkan lajur antara satu sama lain:
=UNIQUE(B2:I2,TRUE)
Taip formula di atas dalam B4, tekan Enter , dan hasilnya akan tumpah secara mendatar ke dalam sel di sebelah kanan. Oleh itu, anda akan mendapat nilai unik berturut-turut:
Petua. Untuk mencari nilai unik dalam tatasusunan berbilang lajur dan mengembalikannya dalam satu lajur atau baris, gunakan UNIQUE bersama-sama dengan fungsi TOCOL atau TOROW seperti yang ditunjukkan dalam contoh di bawah:
- Ekstrak nilai unik daripada berbilang -julat lajur ke dalam lajur
- Tarik nilai unik daripada julat berbilang lajur ke dalam baris
Fungsi UNIK Excel - petua dan nota
UNIK ialah yang baharu fungsi dan seperti fungsi tatasusunan dinamik yang lain mempunyai beberapa kekhususan yang perlu anda ketahui:
- Jika tatasusunan yang dikembalikan oleh UNIQUE ialah hasil akhir (iaitu tidak dihantar ke fungsi lain), Excel secara dinamik mencipta julat bersaiz yang sesuai dan mengisinya dengan hasilnya. Formula perlu dimasukkan hanya dalam satu sel . Adalah penting bahawa anda mempunyai sel kosong yang mencukupi di bawah dan/atau di sebelah kanan sel tempat anda memasukkan formula, jika tidak, ralat #SPILL berlaku.
- Hasilnya kemas kini secara automatik apabiladata sumber berubah. Walau bagaimanapun, entri baharu yang ditambahkan di luar tatasusunan yang dirujuk tidak disertakan dalam formula melainkan anda menukar rujukan tatasusunan . Jika anda mahu tatasusunan bertindak balas kepada saiz semula julat sumber secara automatik, kemudian tukar julat kepada jadual Excel dan gunakan rujukan berstruktur atau buat julat bernama dinamik.
- Susun atur dinamik antara fail Excel yang berbeza hanya berfungsi apabila kedua-dua buku kerja dibuka . Jika buku kerja sumber ditutup, formula UNIK yang dipautkan akan mengembalikan #REF! ralat.
- Seperti fungsi tatasusunan dinamik lain, UNIQUE hanya boleh digunakan dalam julat biasa, bukan jadual. Apabila dimasukkan ke dalam jadual Excel, ia mengembalikan #TUHAN! ralat.
Cara mencari nilai unik dalam Excel - contoh formula
Contoh di bawah menunjukkan beberapa kegunaan praktikal fungsi UNIK dalam Excel. Idea utama adalah untuk mengekstrak nilai unik atau mengalih keluar pendua, bergantung pada pandangan anda, dengan cara yang paling mudah.
Ekstrak nilai unik yang berlaku sekali sahaja
Untuk mendapatkan senarai nilai yang muncul dalam julat yang ditentukan tepat sekali, tetapkan hujah ke-3 UNIQUE kepada TRUE.
Sebagai contoh, untuk menarik nama yang berada dalam senarai pemenang sekali, gunakan formula ini:
=UNIQUE(B2:B10,,TRUE)
Di mana B2:B10 ialah julat sumber dan argumen ke-2 ( by_col ) adalah SALAH atau ditinggalkan kerana data kami disusun dalambaris.
Cari nilai berbeza yang berlaku lebih daripada sekali
Jika anda mengejar matlamat yang bertentangan, iaitu ingin mendapatkan senarai nilai yang muncul dalam julat tertentu lebih daripada satu masa, kemudian gunakan fungsi UNIK bersama-sama dengan FILTER dan COUNTIF:
UNIQUE(FILTER( julat , COUNTIF( julat , julat )>1))Sebagai contoh, untuk mengekstrak nama berbeza yang berlaku dalam B2:B10 lebih daripada sekali, anda boleh menggunakan formula ini:
=UNIQUE(FILTER(B2:B10, COUNTIF(B2:B10, B2:B10)>1))
Cara formula ini berfungsi:
Di tengah-tengah formula, fungsi FILTER menapis masukan pendua berdasarkan kiraan kejadian, dikembalikan oleh fungsi COUNTIF. Dalam kes kami, hasil COUNTIF ialah tatasusunan kiraan ini:
{4;1;3;4;4;1;3;4;3}
Operasi perbandingan (>1) menukar tatasusunan di atas kepada nilai TRUE dan FALSE, dengan TRUE mewakili item yang muncul lebih daripada sekali:
{TRUE;FALSE;TRUE;TRUE;TRUE;FALSE;TRUE;TRUE;TRUE}
Tatasusunan ini diserahkan kepada FILTER sebagai hujah include , memberitahu fungsi nilai yang perlu disertakan dalam tatasusunan yang terhasil:
{"Andrew";"David";"Andrew";"Andrew";"David";"Andrew";"David"}
Seperti yang anda boleh perhatikan, hanya nilai yang sepadan dengan TRUE bertahan.
Tatasusunan di atas pergi ke argumen array UNIQUE, dan selepas mengalih keluar pendua ia mengeluarkan hasil akhir:
{"Andrew";"David"}
Petua. Dengan cara yang sama, anda boleh menapis nilai unik yang berlaku lebih daripada dua kali (>2), lebih daripada tiga kali (>3), dll. Untuk ini, cuma tukarnombor dalam perbandingan logik.
Cari nilai unik dalam berbilang lajur (baris unik)
Dalam situasi apabila anda ingin membandingkan dua atau lebih lajur dan mengembalikan nilai unik antara mereka, masukkan semua lajur sasaran dalam argumen tatasusunan .
Sebagai contoh, untuk mengembalikan nama Pertama (lajur A) dan Nama Akhir yang unik (lajur B) pemenang, kami memasukkan formula ini dalam E2:
=UNIQUE(A2:B10)
Menekan kekunci Enter menghasilkan keputusan berikut:
Untuk mendapatkan baris unik , iaitu entri dengan gabungan unik nilai dalam lajur A, B dan C, ini ialah formula untuk digunakan:
=UNIQUE(A2:C10)
Sangat mudah, bukan? :)
Dapatkan senarai nilai unik yang diisih mengikut susunan abjad
Bagaimanakah anda biasanya menyusun abjad dalam Excel? Betul, dengan menggunakan ciri Isih atau Penapis terbina. Masalahnya ialah anda perlu mengisih semula setiap kali data sumber anda berubah, kerana tidak seperti formula Excel yang mengira semula secara automatik dengan setiap perubahan dalam lembaran kerja, ciri tersebut perlu digunakan semula secara manual.
Dengan pengenalan fungsi tatasusunan dinamik masalah ini telah hilang! Apa yang anda perlu lakukan hanyalah meledingkan fungsi SORT di sekeliling formula UNIK biasa, seperti ini:
SORT(UNIQUE(array))Contohnya, untuk mengekstrak nilai unik dalam lajur A hingga C dan susun keputusan daripada A hingga Z, gunakan formula ini:
=SORT(UNIQUE(A2:C10))
Berbanding dengan contoh di atas,output adalah lebih mudah untuk dilihat dan digunakan. Sebagai contoh, kita dapat melihat dengan jelas bahawa Andrew dan David telah menjadi pemenang dalam dua sukan berbeza.
Petua. Dalam contoh ini, kami mengisih nilai dalam lajur pertama dari A hingga Z. Ini adalah lalai bagi fungsi SORT, oleh itu argumen sort_index dan sort_order akan ditinggalkan. Jika anda ingin mengisih hasil mengikut beberapa lajur lain atau dalam susunan yang berbeza (dari Z ke A atau dari tertinggi ke terkecil) tetapkan argumen ke-2 dan ke-3 seperti yang dijelaskan dalam tutorial fungsi SORT.
Cari nilai unik dalam berbilang lajur dan gabungkan ke dalam satu sel
Apabila mencari dalam berbilang lajur, secara lalai, fungsi Excel UNIQUE mengeluarkan setiap nilai dalam sel yang berasingan. Mungkin, anda akan mendapati lebih mudah untuk mempunyai keputusan dalam satu sel?
Untuk mencapai ini, bukannya merujuk keseluruhan julat, gunakan ampersand (&) untuk menggabungkan lajur dan letakkan yang dikehendaki pembatas di antara.
Sebagai contoh, kami menggabungkan nama pertama dalam A2:A10 dan nama akhir dalam B2:B10, memisahkan nilai dengan aksara ruang (" "):
=UNIQUE(A2:A10&" "&B2:B10)
Hasilnya, kami mempunyai senarai nama penuh dalam satu lajur:
Dapatkan senarai nilai unik berdasarkan kriteria
Untuk mengekstrak nilai unik dengan syarat, gunakan fungsi Excel UNIQUE dan FILTER bersama-sama:
- FILTERfungsi mengehadkan data hanya kepada nilai yang memenuhi syarat.
- Fungsi UNIK mengalih keluar pendua daripada senarai yang ditapis.
Berikut ialah versi generik formula nilai unik yang ditapis:
UNIQUE(FILTER(array, criteria_range = criteria ))Untuk contoh ini, mari dapatkan senarai pemenang dalam sukan tertentu. Sebagai permulaan, kami memasukkan sukan yang diminati dalam beberapa sel, katakan F1. Kemudian, gunakan formula di bawah untuk mendapatkan nama unik:
=UNIQUE(FILTER(A2:B10, C2:C10=F1))
Di mana A2:B10 ialah julat untuk mencari nilai unik dan C2:C10 ialah julat untuk menyemak kriteria .
Tapis nilai unik berdasarkan berbilang kriteria
Untuk menapis nilai unik dengan dua atau lebih syarat, gunakan ungkapan seperti ditunjukkan di bawah untuk membina kriteria yang diperlukan untuk fungsi FILTER:
UNIQUE(FILTER(array, ( julat_kriteria1 = kriteria1 ) * ( julat_kriteria2 = kriteria2 )) )Hasil formula ialah senarai entri unik yang mana semua syarat yang dinyatakan adalah BENAR. Dari segi Excel, ini dipanggil logik DAN.
Untuk melihat formula dalam tindakan, mari dapatkan senarai pemenang unik untuk sukan dalam G1 (kriteria 1) dan bawah umur dalam G2 (kriteria 2 ).
Dengan julat sumber dalam A2:B10, sukan dalam C2:C10 (julat_kriteria 1) dan umur dalam D2:D10 (julat_kriteria 2), formula mengambil bentuk ini:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) * (D2:D10
Dan mengembalikan dengan tepathasil yang kami cari:
Cara formula ini berfungsi:
Berikut ialah penjelasan peringkat tinggi bagi logik formula:
Dalam argumen include fungsi FILTER, anda membekalkan dua atau lebih pasangan julat/kriteria. Hasil daripada setiap ungkapan logik ialah tatasusunan nilai TRUE dan FALSE. Pendaraban tatasusunan memaksa nilai logik kepada nombor dan menghasilkan tatasusunan 1 dan 0. Memandangkan darab dengan sifar sentiasa memberikan sifar, hanya entri yang memenuhi semua syarat mempunyai 1 dalam tatasusunan akhir. Fungsi FILTER menapis item yang sepadan dengan 0 dan menyerahkan hasilnya kepada UNIQUE.
Untuk mendapatkan maklumat lanjut, sila lihat FILTER dengan berbilang kriteria menggunakan logik AND.
Tapis nilai unik dengan berbilang ATAU kriteria
Untuk mendapatkan senarai nilai unik berdasarkan berbilang kriteria ATAU, iaitu apabila ini ATAU kriteria itu BENAR, tambahkan ungkapan logik dan bukannya mendarabkannya:
UNIQUE(FILTER(array, ( julat_kriteria1 = julat_kriteria1 ) + ( julat_kriteria2 = kriteria2 )))Sebagai contoh, untuk menunjukkan pemenang sama ada dalam Bola Sepak atau Hoki , anda boleh menggunakan formula ini:
=UNIQUE(FILTER(A2:B10, (C2:C10="Soccer") + (C2:C10="Hockey")))
Jika perlu, anda sudah tentu boleh memasukkan kriteria dalam sel berasingan dan merujuk kepada sel tersebut seperti ditunjukkan di bawah:
=UNIQUE(FILTER(A2:B10, (C2:C10=G1) + (C2:C10=G2)))
Cara formula ini berfungsi:
Sama seperti semasa menguji berbilang kriteria DAN, awak letak