Excel VLOOKUP işləmir - #N/A və #VALUE xətalarının düzəldilməsi

  • Bunu Paylaş
Michael Brown

Mündəricat

VLOOKUP səhv data çəkir, yoxsa siz onu ümumiyyətlə işə sala bilmirsiniz? Bu dərslik ümumi VLOOKUP səhvlərini necə tez düzəldə biləcəyinizi və onun əsas məhdudiyyətlərini necə aradan qaldıra biləcəyinizi göstərir.

Əvvəlki bir neçə məqalədə biz Excel VLOOKUP funksiyasının müxtəlif aspektlərini araşdırdıq. Əgər bizi yaxından izləyirsinizsə, indi bu sahədə mütəxəssis olmalısınız :)

Lakin bir çox Excel mütəxəssislərinin VLOOKUP-u Excel funksiyalarının ən mürəkkəblərindən biri hesab etmələri səbəbsiz deyil. Müxtəlif problemlərin və səhvlərin mənbəyi olan bir ton məhdudiyyətə malikdir.

Bu məqalədə siz VLOOKUP səhvlərinin əsas səbəbləri ilə bağlı sadə izahatlar tapa bilərsiniz. #N/A, #NAME və #VALUE, həmçinin onların həlli və düzəlişləri. Biz VLOOKUP-un işləməməsinin ən bariz səbəbləri ilə başlayacağıq, ona görə də aşağıdakı problemlərin aradan qaldırılması addımlarını ardıcıllıqla yoxlamaq yaxşı fikir ola bilər.

    #N/A xətası düzəldilir VLOOKUP

    VLOOKUP düsturlarında Excel axtarış dəyərini tapa bilmədikdə #N/A xəta mesajı (“mövcud deyil” deməkdir) göstərilir. Bunun baş verməsinin bir neçə səbəbi ola bilər.

    1. Axtarış dəyəri səhv yazılmışdır

    Əvvəlcə ən aydın olanı yoxlamaq həmişə yaxşı fikirdir : ) Siz minlərlə cərgədən ibarət həqiqətən böyük məlumat dəstləri ilə işləyərkən və ya axtarış dəyəri daxil edildikdə səhvlər tez-tez baş verir. birbaşa düsturda.

    2.VLOOKUP başqa iş vərəqində cədvəl massivini seçə bilmir (yəni, axtarış vərəqində diapazonu vurğuladığınız zaman düsturdakı cədvəl_massivi arqumentində və ya düsturun müvafiq xanasında heç nə görünmür. sehrbazdır), onda çox güman ki, iki vərəq Excel-in ayrı-ayrı nümunələrində açıqdır və bir-biri ilə əlaqə saxlaya bilmir. Daha çox məlumat üçün, lütfən baxın, hansı Excel fayllarının hansı instansiyada olduğunu necə müəyyən etmək olar. Bunu düzəltmək üçün sadəcə olaraq bütün Excel pəncərələrini bağlayın və sonra eyni nümunədə vərəqləri/iş kitablarını yenidən açın (defolt davranış).

    Excel-də səhvsiz Vlookup necə aparılır

    Əgər standart Excel səhv qeydləri ilə istifadəçilərinizi qorxutmaq istəmirsiniz, bunun əvəzinə öz istifadəçi dostu mətninizi göstərə və ya heç nə tapılmadıqda boş xananı qaytara bilərsiniz. Bu, IFERROR və ya IFNA funksiyası ilə VLOOKUP istifadə etməklə edilə bilər.

    Bütün xətaları tutmaq

    Excel 2007 və sonrakı versiyalarda siz VLOOKUP düsturunu səhvlər üçün yoxlamaq və məlumatlarınızı qaytarmaq üçün IFERROR funksiyasından istifadə edə bilərsiniz. hər hansı bir xəta aşkar edilərsə, öz mətnini (və ya boş sətir) əldə edə bilərsiniz.

    Məsələn:

    =IFERROR(VLOOKUP(E1, A2:B10, 2, FALSE), "Oops, something went wrong")

    Excel 2003 və daha əvvəlki versiyalarda siz edə bilərsiniz IF ISERROR düsturunu eyni məqsəd üçün istifadə edin:

    =IF(ISERROR(VLOOKUP(E1, A2:B10, 2, FALSE)), "Oops, something went wrong", VLOOKUP(E1, A2:B10, 2, FALSE))

    Ətraflı məlumat üçün Excel-də VLOOKUP ilə İFERROR-dan istifadə bölməsinə baxın.

    #N/A xətalarını idarə edin

    Bütün digər xəta növlərinə məhəl qoymadan yalnız #N/A xətalarını tutmaq üçün IFNA funksiyasından istifadə edin (Excel 2013-də vədaha yüksək) və ya IF ISNA düsturu (bütün versiyalarda).

    Məsələn:

    =IFNA(VLOOKUP(E1, A2:B10, 2, FALSE), "Oops, no match is found. Please try again!")

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2, FALSE)), "Oops, no match is found. Please try again!", VLOOKUP(E1, A2:B10, 2, FALSE))

    Bu gün üçün hamısı budur. Ümid edirik ki, bu dərslik VLOOKUP səhvlərindən qurtulmanıza və düsturlarınızın istədiyiniz şəkildə işləməsinə kömək edəcək.

    Excel-də VLOOKUP necə - video dərsliyi

    Təxmini uyğunluqda #Yoxdur VLOOKUP

    Düsturunuz ən yaxın uyğunluğu axtarırsa, ( aralıq_axtarış arqumenti DOĞRU olaraq təyin edilib və ya buraxılıb), #N/A xətası iki halda görünə bilər :

    • Axtarış dəyəri axtarış massivindəki ən kiçik dəyərdən kiçikdir.
    • Axtarış sütunu artan qaydada çeşidlənməyib.

    3 . Dəqiq uyğunluqda #N/A VLOOKUP

    Əgər siz dəqiq uyğunluq axtarırsınızsa ( aralıq_axtar arqumenti YANLIŞ olaraq təyin olundu), #N/A xətası axtarışa tam olaraq bərabər dəyər olduqda baş verir. dəyəri tapılmır. Ətraflı məlumat üçün VLOOKUP dəqiq uyğunluğu ilə təxmini uyğunluğa baxın.

    4. Axtarış sütunu cədvəl massivinin ən sol sütunu deyil

    Excel VLOOKUP proqramının ən əhəmiyyətli məhdudiyyətlərindən biri onun sola baxa bilməməsidir. Nəticə etibarilə, axtarış sütunu həmişə cədvəl massivində ən sol sütun olmalıdır. Praktikada biz tez-tez bunu unuduruq və #N/A xətaları ilə nəticələnirik.

    Həll : Əgər məlumatlarınızı yenidən strukturlaşdırmaq mümkün deyilsə Axtarış sütununun ən sol sütun olması üçün VLOOKUP-a alternativ olaraq INDEX və MATCH funksiyalarından birlikdə istifadə edə bilərsiniz. Burada bir düstur nümunəsi var: sola doğru dəyərlərə baxmaq üçün INDEX MATCH düsturu.

    5. Nömrələr mətn kimi formatlanır

    VLOOKUP düsturlarında digər ümumi mənbə #Yoxdur səhvlər əsas və ya axtarış cədvəlində mətn kimi formatlanmış nömrələrdir.

    Bu adətənbəzi xarici verilənlər bazasından məlumatları idxal etdiyiniz zaman və ya baş sıfırları göstərmək üçün rəqəmdən əvvəl apostrof yazdığınız zaman baş verir.

    Mətn kimi formatlanmış rəqəmlərin ən bariz göstəriciləri bunlardır:

    Həll: Bütün problemli nömrələri seçin, xəta işarəsinə klikləyin və kontekst menyusundan Nömrəyə çevir seçin. Əlavə məlumat üçün Excel-də mətni rəqəmə necə çevirmək olar.

    6-a baxın. Aparıcı və ya arxadakı boşluqlar

    Bu, VLOOKUP #N/A xətasının ən az aşkar səbəbidir, çünki insan gözü bu əlavə boşluqları çətinliklə görə bilir, xüsusən də girişlərin çoxunun sürüşdürmənin altında olduğu böyük verilənlər dəsti ilə işləyərkən .

    Həll 1: Axtarış dəyərində əlavə boşluqlar

    VLOOKUP düsturunuzun düzgün işləməsini təmin etmək üçün axtarış dəyərini TRIM funksiyasına sarın:

    =VLOOKUP(TRIM(E1), A2:C10, 2, FALSE)

    Həll 2: Axtarış sütununda əlavə boşluqlar

    Əgər axtarış sütununda əlavə boşluqlar olarsa, VLOOKUP-da #N/A xətalarından qaçmağın asan yolu deyil. Bunun əvəzinə siz INDEX, MATCH və TRIM funksiyalarının kombinasiyasından massiv düsturu kimi istifadə edə bilərsiniz:

    =INDEX(B2:B10, MATCH(TRUE, TRIM(A$2:A$10)=TRIM(E1), 0))

    Bu massiv düsturu olduğundan, Ctrl + Shift + Enter düymələrini basmağı unutmayın. onu düzgün şəkildə tamamlamaq üçün (massivlərin yerli olduğu Excel 365 və Excel 2021-də bu, adi düstur kimi də işləyir).

    İpucu. Sürətli alternativ aradan qaldıracaq Kəsmə Boşluqları alətini işə salmaqdırhəm axtarışda, həm də əsas cədvəllərdə saniyələr ərzində artıq boşluqları aradan qaldıraraq VLOOKUP düsturlarınızı səhvsiz edir.

    #VALUE! VLOOKUP düsturlarında xəta

    Ümumiyyətlə, Microsoft Excel #VALUE! düsturda istifadə olunan dəyər yanlış məlumat növüdürsə, xəta. VLOOKUP ilə əlaqədar olaraq, DƏYƏRİN iki ümumi mənbəyi var! xəta.

    1. Axtarış dəyəri 255 simvolu keçir

    Lütfən nəzərə alın ki, VLOOKUP 255 simvoldan çox olan dəyərləri axtara bilməz. Axtarış dəyərləriniz bu limiti keçərsə, #VALUE! xəta göstəriləcək:

    Həll : Əvəzində INDEX MATCH düsturundan istifadə edin. Bizim vəziyyətimizdə bu düstur mükəmməl işləyir:

    =INDEX(B2:B7, MATCH(TRUE, INDEX(A2:A7= E1, 0), 0))

    2. Axtarış iş kitabının tam yolu təmin edilməyib

    Əgər siz başqa iş kitabından məlumat götürürsünüzsə, ona tam yolu daxil etməlisiniz. Daha dəqiq desək, siz [kvadrat mötərizədə] genişlənmə də daxil olmaqla iş kitabının adını əlavə etməli və vərəqin adını və ardınca nida işarəsini göstərməlisiniz. İş kitabının adı və ya vərəq adı və ya hər ikisində boşluqlar və ya hər hansı qeyri-əlifba simvolu varsa, yol tək dırnaq işarələri içərisində olmalıdır.

    Budur, cədvəl_massivi arqumentinin strukturu: Başqa iş kitabından Vlookup:

    '[workbook name]sheet name'!range

    Həqiqi düstur buna bənzər görünə bilər:

    =VLOOKUP($A$2,'[New Prices.xls]Sheet1'!$B:$D, 3, FALSE)

    Yuxarıdakı düstur A2 dəyərini axtaracaq. Cədvəl1-in B sütununda YeniQiymətlər iş kitabına daxil olun və D sütunundan uyğun dəyər qaytarın.

    Yolun hər hansı elementi çatışmırsa, VLOOKUP düsturunuz işləməyəcək və #VALUE xətasını qaytaracaq (əgər axtarış iş kitabı hazırda deyilsə açın).

    Ətraflı məlumat üçün baxın:

    • Excel-də başqa vərəqə və ya iş kitabına necə müraciət etmək olar
    • Fərqli iş kitabından Vlookup etmək

    3. col_index_num arqumenti 1-dən azdır

    Dəyərlərin qaytarılacağı sütunu müəyyən etmək üçün kiminsə qəsdən 1-dən kiçik rəqəm daxil etdiyi bir vəziyyəti təsəvvür etmək çətindir. Lakin bu, bu arqument VLOOKUP düsturunuzda yerləşdirilmiş başqa funksiya tərəfindən qaytarıldıqda baş verə bilər.

    Beləliklə, əgər col_index_num arqumenti 1-dən çox olarsa, formulanız #VALUE! səhv də.

    Əgər col_index_num cədvəl massivindəki sütunların sayından çox olarsa, VLOOKUP #REF! xəta.

    VLOOKUP #NAME xətası həll edilir

    Bu, ən asan haldır - #NAME? Əgər təsadüfən funksiyanın adını səhv yazmısınızsa, xəta yaranır.

    Həll aydındır - orfoqrafiyanı yoxlayın :)

    Excel VLOOKUP-da səhvlərin əsas səbəbləri

    Bundan başqa kifayət qədər mürəkkəb sintaksisə malik olan VLOOKUP hər hansı digər Excel funksiyasından daha çox məhdudiyyətlərə malikdir. Bu məhdudiyyətlərə görə, düzgün görünən formula çox vaxt gözlədiyinizdən fərqli nəticələr verə bilər. Aşağıda tapa bilərsinizVLOOKUP uğursuz olduğu zaman bir neçə tipik ssenari üçün həllər.

    VLOOKUP böyük hərflərə həssas deyildir

    VLOOKUP funksiyası hərf hərfini fərqləndirmir və kiçik və böyük hərfləri eyniləşdirir.

    Həll : VLOOKUP, XLOOKUP və ya INDEX MATCH funksiyasını mətn hərfinə uyğunlaşdıra bilən DƏK funksiyası ilə birlikdə istifadə edin. Ətraflı izahatları və düstur nümunələrini bu dərslikdə tapa bilərsiniz: Excel-də hərflərə həssas Vlookup etmək üçün 5 üsul.

    Cədvəldən yeni sütun daxil edilib və ya silinib

    Təəssüf ki, VLOOKUP Hər dəfə axtarış cədvəlindən yeni sütun silindikdə və ya ona əlavə edildikdə düsturlar işləməyi dayandırır. Bu, VLOOKUP funksiyasının sintaksisinin qayıdış sütununun indeks nömrəsinin müəyyənləşdirilməsini tələb etdiyi üçün baş verir. Cədvəl massivinə yeni sütun əlavə olunduqda/çıxarılanda, açıq-aydın həmin indeks nömrəsi dəyişir.

    Həll : INDEX MATCH düsturu yenidən köməyə gəlir : ) INDEX MATCH ilə siz axtarış və qaytarma diapazonlarını ayrıca müəyyən edin, beləliklə, hər bir əlaqəli formulun yenilənməsindən narahat olmadan istədiyiniz qədər sütunu silmək və ya daxil etməkdə sərbəstsiniz.

    Düsulu digər xanalara köçürərkən xana istinadları dəyişir

    Başlıq problemin hərtərəfli izahını verir, elə deyilmi?

    Həll : cədvəl_massivi arqumenti üçün həmişə mütləq istinadlardan ($ işarəsi ilə) istifadə edin, məs. $A$2:$C$100 və ya$A:$C. Siz F4 düyməsini sıxmaqla müxtəlif istinad növləri arasında cəld keçid edə bilərsiniz.

    VLOOKUP ilk tapılan dəyəri qaytarır

    Bildiyiniz kimi, Excel VLOOKUP tapdığı ilk dəyəri qaytarır. Bununla belə, siz onu 2-ci, 3-cü, 4-cü və ya istədiyiniz hər hansı bir hadisəni gətirməyə məcbur edə bilərsiniz. Son uyğunluğu və ya bütün tapılmış uyğunluğu əldə etməyin bir yolu da var.

    Həlllər : Formula nümunələri burada mövcuddur:

    • VLOOKUP və N-ci hadisəni qaytarın
    • Birdən çox dəyəri VLOOKUP
    • Son uyğunluğu əldə etmək üçün XLOOKUP düsturu

    Niyə VLOOKUP bəzi xanalar üçün işləyir, digərləri üçün yox?

    VLOOKUP düsturu düzgün məlumatları qaytarır I bəzi xanalarda, digərlərində #N/A xətaları, bunun baş verməsinin bir neçə mümkün səbəbi ola bilər.

    1. Cədvəl massivi kilidlənmir

    Təsəvvür edin ki, sizdə bu düstur 2-ci cərgədə (məsələn, E2-də) var və bu, gözəl işləyir:

    =VLOOKUP(D2, A2:B10, 2, FALSE)

    Sətrə kopyalandıqda 3-də düstur belə dəyişir:

    =VLOOKUP(D3, A3:B11, 2, FALSE)

    Nisbi istinad cədvəl_massivi üçün istifadə edildiyi üçün o, formulun kopyalandığı sıranın nisbi mövqeyinə əsasən dəyişir , bizim vəziyyətimizdə A2:B10-dan A3:B11-ə qədər. Beləliklə, uyğunluq 2-ci cərgədədirsə, o, tapılmayacaq!

    Həll : Birdən çox xana üçün VLOOKUP düsturundan istifadə edərkən həmişə cədvəl massivini kilidləyin. $A$2:$B$10 kimi $ işarəsi ilə istinad.

    2. Mətn dəyərləri və ya məlumat növləri uyğun gəlmir

    BaşqasıVLOOKUP uğursuzluğunun ümumi səbəbi axtarış dəyərinizlə axtarış sütununda oxşar dəyər arasındakı fərqdir. Bəzi hallarda fərq o qədər incə olur ki, onu vizual olaraq aşkar etmək çətindir.

    Həll : VLOOKUP #N/A xətası qaytardıqda, siz axtarış dəyərini ekranda aydın görə bilərsiniz. Axtarış sütunu və yəqin ki, hər ikisi tam olaraq eyni yazılır, etməli olduğunuz ilk şey problemin əsas səbəbini - düstur və ya mənbə məlumatını müəyyən etməkdir.

    İki dəyərin eyni və ya fərqlidirsə, bu şəkildə birbaşa müqayisə aparın:

    =E1=A4

    Burada E1 axtarış dəyərinizdir və A4 axtarış sütununda eyni dəyərdir.

    Əgər düstur YANLIŞ qaytarır, bu o deməkdir ki, qiymətlər tamamilə eyni görünsələr də, müəyyən mənada fərqlidirlər.

    rəqəm dəyərləri halında, ən mümkün səbəb mətn kimi formatlanmış nömrələrdir.

    mətn dəyərləri halında, çox güman ki, problem artıq boşluqlardadır. Bunu yoxlamaq üçün LEN funksiyasından istifadə edərək iki sətirin ümumi uzunluğunu tapın:

    =LEN(E1)

    =LEN(A4)

    Əgər alınan rəqəmlər fərqlidirsə (aşağıdakı ekran görüntüsündə olduğu kimi). ), onda siz günahkarı təyin etdiniz - əlavə boşluqlar:

    Problemi həll etmək üçün ya əlavə boşluqları silin, ya da bu INDEX MATCH TRIM düsturunu həll yolu kimi istifadə edin.

    Niyə VLOOKUP səhv məlumatı çəkir?

    Niyə daha çox səbəb ola bilərVLOOKUP səhv dəyər qaytarır:

    1. Yanlış axtarış rejimi . Dəqiq uyğunluq istəyirsinizsə, aralıq_axtarış arqumentini FALSE olaraq təyin etdiyinizə əmin olun. Defolt TRUE-dur, ona görə də bu arqumenti buraxsanız, VLOOKUP təxmini uyğunluq axtardığınızı güman edəcək və axtarış dəyərindən kiçik olan ən yaxın dəyəri axtaracaq.
    2. Axtarış sütunu deyil çeşidləndi . VLOOKUP ( aralıq_axtar DOĞRU olaraq təyin edilmiş) təxmini uyğunluğu üçün düzgün işləməsi üçün cədvəl massivindəki birinci sütun kiçikdən böyüyə doğru artan qaydada çeşidlənməlidir.
    3. Dublikatlar axtarış sütunu . Axtarış sütununda iki və ya daha çox dublikat dəyər varsa, VLOOKUP ilk tapılan uyğunluğu qaytaracaq, bu, gözlədiyiniz kimi olmaya bilər.
    4. Yanlış qaytarma sütunu . 3-cü arqumentdə indeks nömrəsini iki dəfə yoxlayın :)

    VLOOKUP iki vərəq arasında işləmir

    Əvvəlcə qeyd etmək lazımdır ki, #N/A-nın ümumi səbəbləri, Yuxarıda müzakirə edilən #VALUE və #REF xətaları başqa vərəqdən baxarkən eyni problemlərə səbəb ola bilər. Əgər belə deyilsə, aşağıdakı məqamları yoxlayın:

    1. Başqa vərəqə və ya fərqli iş kitabına xarici istinadın düzgün olduğuna əmin olun.
    2. Başqa iş kitabından Vlookup edərkən Hazırda qapalıdır , düsturunuzda bağlı iş kitabına tam yolun daxil olduğunu yoxlayın.
    3. Əgər

    Michael Brown proqram alətlərindən istifadə edərək mürəkkəb prosesləri sadələşdirməyə həvəsi olan xüsusi texnologiya həvəskarıdır. Texnologiya sənayesində on ildən artıq təcrübəyə malik olmaqla, o, Microsoft Excel və Outlook, həmçinin Google Cədvəl və Sənədlərdə bacarıqlarını mükəmməlləşdirib. Mayklın bloqu öz biliyini və təcrübəsini başqaları ilə bölüşməyə, məhsuldarlığı və səmərəliliyi artırmaq üçün asan izlənilən məsləhətlər və dərslikləri təqdim etməyə həsr olunub. İstər təcrübəli peşəkar, istərsə də yeni başlayan biri olmağınızdan asılı olmayaraq, Mayklın bloqu bu vacib proqram alətlərindən maksimum yararlanmaq üçün dəyərli fikirlər və praktiki məsləhətlər təklif edir.