Isi kandungan
Dalam tutorial ini, kita akan melihat cara menggunakan ISERROR dengan VLOOKUP dalam Excel untuk mengendalikan semua jenis ralat secara produktif.
VLOOKUP ialah salah satu fungsi Excel yang paling mengelirukan yang dihadapi dengan banyak isu. Mana-mana jadual yang anda cari, ralat #N/A adalah pemandangan biasa, dengan #NAME dan #VALUE turut muncul dari semasa ke semasa. Menggunakan VLOOKUP dengan ISERROR boleh membantu anda menangkap semua kemungkinan ralat dan mengendalikannya dengan cara yang paling sesuai dengan situasi anda.
Mengapa VLOOKUP memberikan ralat?
Yang paling banyak ralat biasa dalam formula VLOOKUP ialah #N/A berlaku apabila nilai carian tidak ditemui. Ini mungkin berlaku kerana sebab yang berbeza:
- Nilai carian tidak wujud dalam tatasusunan carian.
- Nilai carian salah eja.
- Terdapat petunjuk atau mengekori ruang dalam nilai carian atau lajur carian.
- Lajur carian bukanlah lajur paling kiri tatasusunan jadual.
Selain itu, anda boleh menghadapi #VALUE ! ralat, mis. apabila nilai carian mengandungi lebih daripada 255 aksara. Sekiranya terdapat ralat ejaan dalam nama fungsi, ralat #NAME? akan muncul.
Untuk rujukan penuh, sila lihat siaran kami yang terdahulu tentang Mengapa Excel VLOOKUP tidak berfungsi.
IF ISERROR VLOOKUP formula untuk menggantikan ralat dengan teks tersuai
Untuk menyamarkan semua kemungkinan ralat yang boleh dicetuskan oleh VLOOKUP, anda boleh meletakkannya di dalam formula IF ISERRORseperti ini:
JIKA(ISERROR(VLOOKUP(…)), " text_if_error", VLOOKUP(…))Sebagai contoh, mari kita tarik nama mata pelajaran di mana pelajar ujian kumpulan A gagal:
=VLOOKUP(A3, $D$3:$E$9, 2, FALSE)
Akibatnya, anda mendapat banyak ralat #N/A, yang mungkin menimbulkan tanggapan bahawa formula itu rosak.
Sebenarnya, ralat ini hanya menunjukkan bahawa beberapa nilai carian (A3:A14) tidak ditemui dalam senarai carian (D3:D9). Untuk menyampaikan idea itu dengan jelas, sarangkan formula VLOOKUP anda dalam pembinaan IF ISERROR:
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
Ini akan menangkap ralat dan mengembalikan mesej teks tersuai anda:
Petua dan nota:
- Kelebihan utama formula ini ialah ia berfungsi dengan baik dalam semua versi Excel 2000 hingga Excel 365. Dalam versi moden, lebih mudah dan alternatif yang lebih padat tersedia.
- Fungsi ISERROR menangkap semua ralat , seperti #N/A, #NAME, #VALUE, dll. Sekiranya anda ingin memaparkan tersuai mesej hanya apabila nilai carian tidak dijumpai (#N/A ralat), gunakan IF ISNA VLOOKUP (dalam semua versi) atau IFNA VLOOKUP (dalam Excel 2013 dan kemudian).
ISERROR VLOOKUP untuk kembalikan sel kosong jika ralat
Untuk mempunyai sel kosong apabila ralat berlaku, dapatkan formula anda untuk mengembalikan rentetan kosong ("") dan bukannya teks tersuai:
IF(ISERROR(VLOOKUP(…) ), "", VLOOKUP(…))Dalam kes kami, formula mengambil bentuk ini:
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
Thekeputusan adalah tepat seperti yang dijangkakan - sel kosong jika nama pelajar tidak ditemui dalam jadual carian.
Petua. Dengan cara yang sama, anda boleh menggantikan ralat VLOOKUP dengan sifar, sempang atau mana-mana aksara lain yang anda suka. Hanya gunakan aksara yang dikehendaki sebagai ganti rentetan kosong.
JIKA ISERROR VLOOKUP Ya/Tidak formula
Dalam sesetengah situasi, anda mungkin sedang mencari sesuatu tetapi bukannya menarik padanan hanya mahu membalas Ya (atau beberapa teks lain jika nilai carian ditemui) dan Tidak (jika nilai carian tidak ditemui). Untuk melakukannya, anda boleh menggunakan formula generik ini:
IF(ISERROR(VLOOKUP(…)), " text_if_not_found ", " text_if_found ")Dalam kami contoh set data, katakan anda ingin mengetahui pelajar yang gagal dalam ujian dan yang tidak. Untuk mencapai ini, berikan formula ISERROR VLOOKUP yang sudah biasa kepada ujian logik IF dan beritahu ia untuk mengeluarkan "Tidak" jika nilai tidak dijumpai (ISERROR VLOOKUP mengembalikan BENAR), "Ya" jika dijumpai (ISERROR VLOOKUP mengembalikan FALSE):
=IF(ISERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", "Yes")
Alternatif ISERROR VLOOKUP
Gabungan IF ISERROR ialah teknik tertua yang terbukti untuk Vlookup tanpa ralat dalam Excel. Dari masa ke masa, fungsi baharu berkembang, menyediakan cara yang lebih mudah untuk melaksanakan tugas yang sama. Di bawah, kami akan membincangkan penyelesaian lain yang mungkin dan bila setiap penyelesaian terbaik untuk digunakan.
IFERROR VLOOKUP
Tersedia dalam Excel 2007 danlebih tinggi
Bermula dengan versi 2007, Excel mempunyai fungsi khas, bernama IFERROR, untuk menyemak formula untuk ralat dan mengembalikan teks anda sendiri (atau menjalankan formula alternatif) jika sebarang ralat dikesan.
IFERROR(VLOOKUP(…), " text_if_error ")Formula kehidupan sebenar adalah seperti berikut:
=IFERROR(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")
Pada pandangan pertama, ia kelihatan seperti analog yang lebih pendek daripada formula IF ISERROR VLOOKUP. Walau bagaimanapun, terdapat perbezaan penting:
- IFERROR VLOOKUP menganggap bahawa anda sentiasa mahukan hasil VLOOKUP jika ia bukan ralat.
- JIKA ISERROR VLOOKUP membenarkan anda menentukan perkara yang perlu kembalikan jika ralat dan bagaimana jika tiada ralat.
Untuk butiran lanjut, sila lihat Menggunakan IFERROR dengan VLOOKUP dalam Excel.
JIKA ISNA VLOOKUP
Berfungsi dalam Excel 2000 dan kemudian
Dalam situasi apabila anda ingin memerangkap hanya #N/A tanpa menangkap sebarang ralat lain, fungsi ISNA berguna. Sintaks adalah sama seperti IF ISERROR VLOOKUP:
IF(ISNA(VLOOKUP(…)), " text_if_error ", VLOOKUP(…))Tetapi dalam keadaan tertentu, ini nampaknya formula yang sama mungkin menghasilkan hasil yang berbeza:
=IF(ISNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE)), "No", VLOOKUP(A3, $D$3:$E$9, 2, FALSE))
Dalam imej di bawah, sel A13 mengandungi banyak ruang mengekor kerana jumlah panjang nilai carian melebihi 255 aksara. Hasilnya, formula mencetuskan #VALUE! kesilapan, menarik perhatian anda kepada sel itu dan menggalakkan untuk menyiasat sebab-sebabnya. ISERRORVLOOKUP akan mengembalikan "Tidak" dalam kes ini, yang hanya akan mengaburkan isu dan memberikan hasil yang salah sama sekali.
Bila menggunakan:
Formula ini berfungsi dengan baik dalam situasi apabila anda ingin memaparkan beberapa teks hanya apabila nilai carian tidak ditemui dan tidak mahu menyembunyikan masalah asas dengan formula VLOOKUP itu sendiri, mis. apabila nama fungsi tersalah taip (#NAME?) atau laluan penuh ke buku kerja carian tidak ditentukan (#VALUE!).
Untuk mendapatkan maklumat lanjut, sila lihat fungsi ISNA dalam Excel dengan contoh formula.
IFNA VLOOKUP
Tersedia dalam Excel 2013 dan lebih tinggi
Ia merupakan pengganti moden gabungan IF ISNA yang membolehkan anda mengendalikan ralat #N/A dalam cara yang lebih mudah.
IFNA(VLOOKUP(…), " text_if_error ")Berikut ialah persamaan trengkas formula IF ISNA VLOOKUP kami:
=IFNA(VLOOKUP(A3, $D$3:$E$9, 2, FALSE), "No")
Bila hendak digunakan:
Ia merupakan penyelesaian yang ideal untuk memerangkap dan mengendalikan ralat #N/A dalam versi moden Excel (2013 - 365).
Untuk butiran penuh, lihat fungsi Excel IFNA.
XLOOKUP
Disokong dalam Excel 2021 dan Excel 365
Disebabkan fungsi "jika ralat" terbina dalam , fungsi XLOOKUP ialah cara paling mudah untuk mencari tanpa ralat #N/A dalam Excel. Cuma, taip teks mesra pengguna anda dalam argumen ke-4 pilihan bernama if_not_found .
Contohnya:
=XLOOKUP(A3, $D$3:$D$9, $E$3:$E$9, "No")
Had: Ia hanya menangkap ralat #N/A, mengabaikanjenis lain.
Untuk mendapatkan maklumat lanjut, lihat fungsi XLOOKUP dalam Excel.
Seperti yang anda lihat, Excel menyediakan banyak pilihan berbeza untuk mendapatkan ralat rig kepada VLOOKUP. Mudah-mudahan, tutorial ini telah memberi penerangan tentang cara menggunakannya dengan berkesan. Saya berterima kasih kerana membaca dan berharap dapat berjumpa anda di blog kami minggu hadapan!
Muat turun yang tersedia
ISERROR dengan contoh VLOOKUP (fail.xlsx)