Formula Excel: VLOOKUP jika kosong kembali kosong -

Formula generik

=IF(VLOOKUP(A1,data,col,0)="","",VLOOKUP(A1,data,col,0))

Ringkasan

Untuk memeriksa sel kosong dalam hasil VLOOKUP, anda boleh menggabungkan fungsi VLOOKUP dengan fungsi IF. Dalam contoh yang ditunjukkan, formula dalam G5, disalin ke bawah, adalah:

=IF(VLOOKUP(E5,data,2,0)="","",VLOOKUP(E5,data,2,0))

di mana "data" adalah julat bernama B5: C11.

Konteks

Apabila VLOOKUP tidak dapat mencari nilai dalam jadual carian, ia mengembalikan ralat # N / A. Anda boleh menggunakan fungsi IFNA atau fungsi IFERROR untuk memerangkap ralat ini. Namun, apabila hasil dalam jadual pencarian adalah sel kosong, tidak ada kesalahan yang dilemparkan, VLOOKUP hanya mengembalikan sifar.

Ini boleh menyebabkan masalah apabila jadual pencarian mengandungi nilai sifar yang sebenarnya, kerana ini menunjukkan bahawa sel kosong di dalam jadual pencarian juga mengandungi nol, padahal sebenarnya kosong. Untuk mengatasi masalah ini, anda boleh menguji hasil VLOOKUP secara eksplisit dengan fungsi IF, kemudian mengembalikan hasil khusus jika anda menemui rentetan kosong.

Penjelasan

Untuk menguji hasil VLOOKUP secara langsung, kami menggunakan fungsi IF seperti ini:

=IF(VLOOKUP(E5,data,2,0)="",""

Diterjemahkan: jika hasil dari VLOOKUP adalah rentetan kosong (""), kembalikan rentetan kosong.

Sekiranya hasil dari VLOOKUP bukan rentetan kosong, jalankan VLOOKUP sekali lagi dan kembalikan hasil yang normal:

VLOOKUP(E5,data,2,0)

Perhatikan dalam kedua kes tersebut, argumen keempat untuk VLOOKUP diatur ke nol untuk memaksa pertandingan yang tepat.

Alternatif dengan LEN atau ISNUMBER

Bergantung pada keperluan anda, anda dapat mengembangkan idea di atas untuk menjalankan ujian yang lebih khusus. Sebagai contoh, untuk menguji sel yang secara harfiah mempunyai watak sifar (iaitu panjang sifar), anda boleh menggunakan fungsi LEN seperti ini:

=IF(LEN(VLOOKUP(E5,data,2,0))=0,"",VLOOKUP(E5,data,2,0))

Untuk menguji keputusan berangka sahaja, anda boleh menggunakan fungsi ISNUMBER, dan menyusun semula logik seperti ini:

=IF(ISNUMBER(VLOOKUP(E5,data,2,0)),VLOOKUP(E5,data,2,0),"")

Diterjemahkan: jika hasil dari VLOOKUP adalah nombor, kembalikan carian biasa. Sekiranya tidak, kembalikan rentetan kosong ("").

Artikel menarik...