Rumus Excel: Senarai mengandungi pendua -

Isi kandungan

Formula generik

=SUMPRODUCT(COUNTIF(data,data)-1)>0

Ringkasan

Adakah julat mengandungi nilai pendua? Sekiranya anda ingin menguji julat (atau senarai) untuk pendua, anda boleh melakukannya dengan formula yang menggunakan COUNTIF bersama dengan SUMPRODUCT.

Contohnya, terdapat senarai nama dalam julat B3: B11. Sekiranya anda ingin menguji senarai ini untuk melihat apakah ada nama pendua, anda boleh menggunakan:

=SUMPRODUCT(COUNTIF(B3:B11,B3:B11)-1)>0

Penjelasan

Bekerja dari dalam ke luar, COUNTIF terlebih dahulu mendapat kiraan setiap nilai dalam B3: B11 dalam julat B3: B11. Oleh kerana kami menyediakan julat (array) sel untuk kriteria tersebut, COUNTIF mengembalikan pelbagai kiraan sebagai hasilnya. Dalam contoh yang ditunjukkan, susunan ini kelihatan seperti ini:

(1; 2; 1; 1; 1; 1; 1; 2; 1)

Seterusnya 1 dikurangkan, yang menghasilkan susunan seperti ini:

(0; 1; 0; 0; 0; 0; 0; 1; 0)

Perhatikan bahawa setiap 1 dalam array (iaitu item yang muncul sekali sahaja) telah ditukar menjadi sifar.

Selanjutnya, SUMPRODUCT menambah elemen dalam larik ini dan mengembalikan hasilnya, yang dalam hal ini adalah nombor 2, yang kemudian diuji untuk nilai> 0.

Bila-bila masa senarai mengandungi pendua, sekurang-kurangnya akan ada dua 1 dalam array yang dijumlahkan oleh SUMPRODUCT, jadi hasil akhir dari BENAR bermaksud senarai tersebut mengandungi pendua.

Mengendalikan sel kosong

Sel kosong dalam julat akan menyebabkan formula di atas menghasilkan hasil yang salah. Untuk menapis sel kosong atau kosong, anda boleh menggunakan alternatif berikut:

=SUMPRODUCT((COUNTIF(list,list)-1)*(list""))>0

Di sini kita menggunakan senarai ungkapan logik "" untuk memaksa semua nilai yang berkaitan dengan sel kosong menjadi sifar.

Pautan yang baik

Lihat senarai nombor pendua (Chandoo)

Artikel menarik...