Excel VLOOKUP жұмыс істемейді - #N/A және #VALUE қателерін түзету

  • Мұны Бөлісіңіз
Michael Brown

Мазмұны

VLOOKUP қате деректерді алып жатыр ма немесе сіз оны мүлдем жұмысқа ала алмайсыз ба? Бұл оқулық жалпы VLOOKUP қателерін қалай жылдам түзетуге және оның негізгі шектеулерін еңсеруге болатынын көрсетеді.

Алдыңғы бірнеше мақалада Excel VLOOKUP функциясының әртүрлі аспектілерін зерттедік. Егер сіз бізді мұқият бақылап отырсаңыз, қазір сіз осы саланың маманы болуыңыз керек :)

Дегенмен, көптеген Excel мамандары VLOOKUP функциясын Excel функцияларының ең күрделісі деп санайтыны бекер емес. Оның көптеген шектеулері бар, олар әртүрлі мәселелер мен қателердің көзі болып табылады.

Бұл мақалада сіз VLOOKUP қателерінің негізгі себептері туралы қарапайым түсініктемелерді таба аласыз, мысалы. #N/A, #NAME және #VALUE, сондай-ақ олардың шешімдері мен түзетулері. Біз VLOOKUP жұмыс істемейтін ең айқын себептерден бастаймыз, сондықтан төмендегі ақауларды жою қадамдарын ретімен тексеріп алғаныңыз жөн болар.

    #N/A қатесін түзету VLOOKUP

    VLOOKUP формулаларында Excel іздеу мәнін таба алмаған кезде #N/A қате хабары («қолжетімсіз» дегенді білдіреді) көрсетіледі. Мұның бірнеше себептері болуы мүмкін.

    1. Іздеу мәні қате жазылған

    Әрқашан ең айқын нәрсені тексерген дұрыс : ) Мыңдаған жолдардан тұратын шын мәнінде үлкен деректер жиынымен жұмыс істегенде немесе іздеу мәні терілгенде қателер жиі орын алады. тікелей формулада.

    2.VLOOKUP басқа жұмыс парағындағы кесте массивін таңдай алмайды (яғни іздеу парағында ауқымды бөлектегенде, формуладағы кесте_жиымы аргументінде немесе формуланың сәйкес өрісінде ештеңе көрсетілмейді. шебері), екі парақ Excel бағдарламасының бөлек даналарында ашық және бір-бірімен байланыса алмайды. Қосымша ақпарат алу үшін Excel файлдарының қай данада екенін анықтау әдісі бөлімін қараңыз. Мұны түзету үшін барлық Excel терезелерін жабыңыз, содан кейін парақтарды/жұмыс кітаптарын сол данада қайта ашыңыз (әдепкі әрекет).

    Excel бағдарламасында қатесіз дыбысты іздеу жолы

    Егер стандартты Excel қате белгілерімен пайдаланушыларды қорқытқыңыз келмейді, оның орнына өзіңіздің пайдаланушыға ыңғайлы мәтініңізді көрсете аласыз немесе ештеңе табылмаса, бос ұяшықты қайтара аласыз. Мұны IFERROR немесе IFNA функциясымен VLOOKUP пайдалану арқылы жасауға болады.

    Барлық қателерді ұстау

    Excel 2007 және одан кейінгі нұсқаларында қателер бар-жоғын VLOOKUP формуласын тексеру және сіздің деректеріңізді қайтару үшін IFERROR функциясын пайдалануға болады. кез келген қате анықталса, өз мәтінін (немесе бос жолды).

    Мысалы:

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

    Excel 2003 және одан бұрынғы нұсқаларында, сол мақсатта IF ISERROR формуласын пайдаланыңыз:

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

    Қосымша мәліметтер алу үшін Excel бағдарламасында VLOOKUP көмегімен IFERROR пайдалану бөлімін қараңыз.

    #N/A қателерін өңдеу

    Барлық басқа қате түрлерін елемей тек #N/A қателерін ұстау үшін IFNA функциясын пайдаланыңыз (Excel 2013 жәнежоғары) немесе IF ISNA формуласы (барлық нұсқаларда).

    Мысалы:

    =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))

    Бүгінгі күннің бәрі осы. Бұл оқулық VLOOKUP қателерінен арылуға және формулаларыңыздың қалағандай жұмыс істеуіне көмектеседі деп үміттенеміз.

    Excel бағдарламасында VLOOKUP әдісі - бейне оқу құралы

    Шамамен сәйкестікте #ЖОҚ VLOOKUP

    Егер формула ең жақын сәйкестікті іздесе, ( аралықты_іздеу аргументі АҚИҚА мәніне орнатылған немесе өткізілмей қалды), #N/A қатесі екі жағдайда пайда болуы мүмкін :

    • Іздеу мәні іздеу массивіндегі ең кіші мәннен кіші.
    • Іздеу бағаны өсу ретімен сұрыпталмаған.

    3 . #N/A дәл сәйкестікте VLOOKUP

    Егер дәл сәйкестікті іздеп жатсаңыз ( ауқым_іздеу аргументі ЖАЛҒАН мәніне орнатылған), #Жоқ қате мән іздеуге дәл тең болғанда орын алады. мәні табылмайды. Қосымша ақпарат алу үшін VLOOKUP дәл сәйкестік пен шамамен сәйкестік бөлімін қараңыз.

    4. Іздеу бағаны кесте массивінің сол жақ бағанасы емес

    Excel VLOOKUP бағдарламасының ең маңызды шектеулерінің бірі оның сол жағына қарай алмайтындығы болып табылады. Демек, іздеу бағаны әрқашан кесте массивіндегі ең сол жақ баған болуы керек. Іс жүзінде біз бұл туралы жиі ұмытып, #N/A қателерімен аяқталамыз.

    Шешімі : Егер деректеріңізді қайта құрылымдау мүмкін болмаса Іздеу бағаны сол жақтағы баған болуы үшін INDEX және MATCH функцияларын VLOOKUP қолданбасына балама ретінде бірге пайдалануға болады. Міне формула мысалы: сол жақтағы мәндерді іздеу үшін INDEX MATCH формуласы.

    5. Сандар мәтін ретінде пішімделген

    VLOOKUP формулаларындағы тағы бір жиі кездесетін #Жоқ қателер негізгі немесе іздеу кестесінде мәтін ретінде пішімделген сандар болып табылады.

    Әдетте бұлкейбір сыртқы дерекқордан деректерді импорттау кезінде немесе алдыңғы нөлдерді көрсету үшін санның алдында апострофты терген кезде орын алады.

    Міне, мәтін ретінде пішімделген сандардың ең айқын көрсеткіштері:

    Шешімі: Барлық проблемалық сандарды таңдап, қате белгішесін басып, контекстік мәзірден Санға түрлендіру пәрменін таңдаңыз. Қосымша ақпаратты Excel бағдарламасындағы мәтінді санға түрлендіру жолын қараңыз.

    6. Бастапқы немесе кейінгі бос орындар

    Бұл VLOOKUP #N/A қатесінің ең айқын себебі, өйткені адам көзі бұл қосымша кеңістіктерді әрең байқайды, әсіресе жазбалардың көпшілігі айналдырудан төмен орналасқан үлкен деректер жиынымен жұмыс істегенде .

    1-шешім: Іздеу мәніндегі қосымша бос орындар

    VLOOKUP формуласының дұрыс жұмыс істеуін қамтамасыз ету үшін іздеу мәнін TRIM функциясына ораңыз:

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

    2-шешім: Іздеу бағанындағы қосымша бос орындар

    Егер іздеу бағанында қосымша бос орындар болса, онда VLOOKUP ішіндегі #N/A қателерін болдырмаудың оңай жолы емес. Оның орнына массив формуласы ретінде INDEX, MATCH және TRIM функцияларының тіркесімін пайдалануға болады:

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

    Бұл массив формуласы болғандықтан, Ctrl + Shift + Enter пернелерін басуды ұмытпаңыз. оны дұрыс толтыру үшін (массивтер түпнұсқа болып табылатын Excel 365 және Excel 2021 нұсқаларында бұл да кәдімгі формула ретінде жұмыс істейді).

    Кеңес. Жылдам балама - Кеңістіктерді кесу құралын іске қосу, ол жойыладыіздеуде де, негізгі кестелерде де артық бос орындарды секундтар ішінде толтырып, VLOOKUP формулаларын қатесіз етеді.

    #VALUE! VLOOKUP формулаларындағы қате

    Жалпы, Microsoft Excel бағдарламасы #VALUE! қате, егер формулада пайдаланылған мән қате деректер түрі болса. VLOOKUP функциясына келетін болсақ, VLOOKUP екі жалпы көзі бар! қате.

    1. Іздеу мәні 255 таңбадан асады

    VLOOKUP функциясы 255 таңбадан көп мәндерді іздей алмайтынын ескеріңіз. Іздеу мәндері осы шектен асып кетсе, #VALUE! қате көрсетіледі:

    Шешімі : Оның орнына INDEX MATCH формуласын пайдаланыңыз. Біздің жағдайда бұл формула тамаша жұмыс істейді:

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

    2. Іздеу жұмыс кітабына толық жол берілмейді

    Егер сіз басқа жұмыс кітабынан деректерді алып жатсаңыз, оған толық жолды қосуыңыз керек. Дәлірек айтқанда, [шаршы жақшаға] кеңейтімді қоса, жұмыс кітабының атын қоршауға және леп белгісінен кейін парақтың атын көрсету керек. Жұмыс кітабының атауы немесе парақ атауы немесе екеуінде бос орындар немесе кез келген әліпбилік емес таңбалар болса, жол жалғыз тырнақшаға алынуы керек.

    Міне, кесте_жиымы аргументінің құрылымы. Басқа жұмыс кітабынан шолу:

    '[workbook name]sheet name'!range

    Нақты формула келесіге ұқсас болуы мүмкін:

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

    Жоғарыдағы формула A2 мәнін іздейді. Парақтың B бағанында ЖаңаБағалар жұмыс кітабын және D бағанынан сәйкес мәнді қайтарады.

    Егер жолдың кез келген элементі жоқ болса, VLOOKUP формуласы жұмыс істемейді және #VALUE қатесін қайтарады (іздеу жұмыс кітабы қазіргі уақытта болмаса) ашық).

    Қосымша ақпаратты қараңыз:

    • Excel бағдарламасындағы басқа параққа немесе жұмыс кітабына сілтеме жасау
    • Басқа жұмыс кітабынан Vlookup жасау

    3. col_index_num аргументі 1-ден аз

    Мәндерді қайтаратын бағанды ​​көрсету үшін біреу әдейі 1-ден аз санды енгізген жағдайды елестету қиын. Бірақ бұл аргумент VLOOKUP формулаңызда кірістірілген басқа функция арқылы қайтарылса орын алуы мүмкін.

    Сонымен, түтік_индекс_саны аргументі 1-ден болса, формулаңыз #МӘН береді! қате де.

    Егер түс_индекс_саны кесте массивіндегі бағандар санынан көп болса, VLOOKUP #REF! қате.

    VLOOKUP #NAME қатесін шешу

    Бұл ең оңай жағдай - #NAME? қате функцияның атын байқаусызда қате жіберіп алсаңыз пайда болады.

    Шешімі анық – емлені тексеру :)

    Excel VLOOKUP қателерінің негізгі себептері

    Бұдан басқа өте күрделі синтаксисі бар VLOOKUP кез келген басқа Excel функциясына қарағанда көбірек шектеулерге ие. Осы шектеулерге байланысты дұрыс көрінетін формула сіз күткеннен басқа нәтижелерді жиі бере алады. Төменде сіз таба аласызVLOOKUP сәтсіз болған кездегі бірнеше типтік сценарийлердің шешімдері.

    ТҮШІНДЕГІ ІЗДЕУ функциясы регистрді ескермейді

    VLOOKUP функциясы әріп регистрін ажыратпайды және кіші және бас әріптерді бірдей етіп көрсетеді.

    Шешім : VLOOKUP, XLOOKUP немесе INDEX MATCH функциясын мәтін регистріне сәйкес келетін EXACT функциясымен бірге пайдаланыңыз. Егжей-тегжейлі түсініктемелер мен формула мысалдарын осы оқулықтан таба аласыз: Excel бағдарламасында регистрді ескеретін Vlookup жасаудың 5 жолы.

    Кестеден жаңа баған енгізілді немесе жойылды

    Өкінішке орай, VLOOKUP формулалар іздеу кестесінен жаңа баған жойылған немесе оған қосылған сайын жұмысын тоқтатады. Бұл VLOOKUP функциясының синтаксисі қайтару бағанының индекс нөмірін анықтауды талап ететіндіктен орын алады. Кесте массивіне жаңа баған қосылғанда/жойылғанда, бұл индекс нөмірі өзгеретіні анық.

    Шешімі : INDEX MATCH формуласы қайтадан көмекке келеді : ) INDEX MATCH көмегімен сіз іздеу және қайтару ауқымдарын бөлек көрсетіңіз, осылайша әр байланысты формуланы жаңарту туралы алаңдамай, қалағаныңызша көптеген бағандарды жоюға немесе енгізуге болады.

    Формулаларды басқа ұяшықтарға көшіру кезінде ұяшық сілтемелері өзгереді

    Тақырып мәселенің толық түсіндірмесін береді, солай емес пе?

    Шешімі : кесте_жиымы аргументі үшін әрқашан абсолютті сілтемелерді ($ белгісімен) пайдаланыңыз, мысалы. $A$2:$C$100 немесе$A:$C. F4 пернесін басу арқылы әртүрлі сілтеме түрлері арасында жылдам ауысуға болады.

    VLOOKUP бірінші табылған мәнді қайтарады

    Өздеріңіз білетіндей, Excel VLOOKUP бағдарламасы өзі тапқан бірінші мәнді қайтарады. Дегенмен, сіз оны 2-ші, 3-ші, 4-ші немесе өзіңіз қалаған кез келген басқа оқиғаны әкелуге мәжбүрлей аласыз. Сондай-ақ соңғы сәйкестікті немесе барлық табылған сәйкестіктерді алудың жолы бар.

    Шешімдер : Формула мысалдары мына жерде қолжетімді:

    • VLOOKUP және N-ші ретті қайтару
    • VLOOKUP бірнеше мәндер
    • Соңғы сәйкестікті алу үшін XLOOKUP формуласы

    Неліктен менің VLOOKUP кейбір ұяшықтар үшін жұмыс істейді, ал басқаларында жұмыс істемейді?

    Қашан VLOOKUP формуласы дұрыс деректерді береді I кейбір ұяшықтар, ал басқаларында #N/A қателері, оның орын алуының бірнеше ықтимал себептері болуы мүмкін.

    1. Кесте массиві құлыпталмаған

    Бұл формула 2-жолда (Е2-де айталық) бар делік, ол жақсы жұмыс істейді:

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

    Жолға көшірілгенде 3, формула келесіге өзгереді:

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

    Салыстырмалы сілтеме кесте_массив үшін пайдаланылғандықтан, ол формула көшірілген жолдың салыстырмалы орнына байланысты өзгереді , біздің жағдайда A2:B10-дан A3:B11-ге дейін. Демек, сәйкестік 2-жолда болса, ол табылмайды!

    Шешімі : VLOOKUP формуласын бірден көп ұяшықтар үшін пайдаланған кезде, әрқашан кесте массивін құлыптаңыз. $A$2:$B$10 сияқты $ белгісі бар сілтемесі.

    2. Мәтін мәндері немесе деректер түрлері сәйкес келмейді

    БасқаVLOOKUP сәтсіздігінің жалпы себебі - іздеу мәні мен іздеу бағанындағы ұқсас мән арасындағы айырмашылық. Кейбір жағдайларда айырмашылық соншалықты нәзік, оны визуалды түрде анықтау қиын.

    Шешімі : VLOOKUP функциясы #N/A қатесін қайтарғанда, іздеу мәнін экранда анық көруге болады. іздеу бағанында және екеуі де бірдей жазылған сияқты, алдымен мәселенің түпкі себебін - формуланы немесе бастапқы деректерді анықтау керек.

    Екі мәннің бірдей немесе әртүрлі болса, мына жолмен тікелей салыстыру жасаңыз:

    =E1=A4

    Мұндағы E1 - іздеу мәні және A4 - іздеу бағанындағы бірдей мән.

    Егер формула ЖАЛҒАН мәнін қайтарады, бұл мәндердің бір-бірінен мүлдем ұқсамайтынын білдіреді.

    сандық мәндер болған жағдайда, ең ықтимал себеп мәтін ретінде пішімделген сандар болуы мүмкін.

    мәтін мәндері болған жағдайда, мәселе артық бос орындарда болуы мүмкін. Мұны тексеру үшін LEN функциясын пайдаланып екі жолдың жалпы ұзындығын табыңыз:

    =LEN(E1)

    =LEN(A4)

    Егер нәтиже сандар әртүрлі болса (төмендегі скриншоттағы сияқты) ), содан кейін сіз кінәліні анықтадыңыз - қосымша бос орындар:

    Мәселені шешу үшін қосымша бос орындарды жойыңыз немесе уақытша шешім ретінде осы INDEX MATCH TRIM формуласын пайдаланыңыз.

    Неліктен менің VLOOKUP қате деректерді тартады?

    Одан да көп себептер болуы мүмкін.VLOOKUP қате мәнді қайтарады:

    1. Қате іздеу режимі . Егер дәл сәйкестікті қаласаңыз, аралықты_іздеу аргументін ЖАЛҒАН етіп орнатуды ұмытпаңыз. Әдепкі мәні - ШЫН, сондықтан бұл аргументті өткізіп алсаңыз, VLOOKUP функциясы сіз шамамен сәйкестікті іздеп жатырсыз деп есептейді және іздеу мәнінен кішірек ең жақын мәнді іздейді.
    2. Іздеу бағаны емес. сұрыпталған . Шамамен сәйкестік VLOOKUP ( аралым_іздеу TRUE мәніне орнатылған) дұрыс жұмыс істеуі үшін кесте массивіндегі бірінші баған ең кішіден ең үлкенге қарай өсу ретімен сұрыпталуы керек.
    3. Көшірмелері іздеу бағаны . Іздеу бағанында екі немесе одан да көп қайталанатын мәндер болса, VLOOKUP бірінші табылған сәйкестікті қайтарады, ол сіз күткендей болмауы мүмкін.
    4. Қате қайтару бағаны . 3-аргументтегі индекс нөмірін екі рет тексеріңіз :)

    VLOOKUP екі парақ арасында жұмыс істемейді

    Біріншіден, #N/A жалпы себептерін атап өту керек, Жоғарыда қарастырылған #VALUE және #REF қателері басқа парақтан іздеу кезінде бірдей мәселелерді тудыруы мүмкін. Олай болмаса, келесі тармақтарды тексеріңіз:

    1. Басқа параққа немесе басқа жұмыс кітабына сыртқы сілтеме дұрыс екеніне көз жеткізіңіз.
    2. Басқа жұмыс кітабынан Vlookup жасағанда. Қазіргі уақытта жабық , формулаңызда жабық жұмыс кітабына толық жол бар екенін тексеріңіз.
    3. Егер

    Майкл Браун - бағдарламалық құралдарды пайдалана отырып, күрделі процестерді жеңілдетуге құмарлығы бар арнайы технология әуесқойы. Технологиялық индустрияда он жылдан астам тәжірибесі бар ол Microsoft Excel және Outlook, сондай-ақ Google Sheets және Docs бағдарламаларында өз дағдыларын жетілдірді. Майклдың блогы өз білімі мен тәжірибесін басқалармен бөлісуге, өнімділік пен тиімділікті арттыруға арналған оңай орындалатын кеңестер мен оқулықтар беруге арналған. Сіз тәжірибелі кәсіпқой болсаңыз да, жаңадан бастаушы болсаңыз да, Майклдың блогы осы маңызды бағдарламалық құралдарды барынша пайдалану үшін құнды түсініктер мен практикалық кеңестер ұсынады.