Excel IFERROR & AMP; VLOOKUP - trap #N/A болон бусад алдаа

  • Үүнийг Хуваалц
Michael Brown

Энэ зааварт бид IFERROR болон VLOOKUP функцуудыг хэрхэн хамтад нь ашиглаж, янз бүрийн алдааг барьж, зохицуулах талаар авч үзэх болно. Нэмж дурдахад та хэд хэдэн IFERROR функцийг нэг нэгээр нь оруулан Excel дээр дараалсан vlookup хийх талаар сурах болно.

Excel VLOOKUP болон IFERROR - эдгээр хоёр функцийг нэгтгэх нь бүү хэл тусад нь ойлгоход хэцүү байж магадгүй. Энэ өгүүллээс та нийтлэг хэрэглээг харуулсан дагахад хялбар цөөн хэдэн жишээг олж, томьёоны логикийг тодорхой харуулсан болно.

Хэрэв та IFERROR болон VLOOKUP функцүүдийн талаар тийм ч их туршлагагүй бол энэ нь байж магадгүй юм. Дээрх линкүүдийг дагаж үндсэн ойлголтуудыг нь засах нь зүйтэй юм.

    #N/A болон бусад алдааг зохицуулах IFALROR VLOOKUP томьёо

    Excel Vlookup нь олж чадаагүй үед хайлтын утга нь үүнтэй төстэй #Үгүй алдаа гаргадаг:

    Таны бизнесийн хэрэгцээ шаардлагаас хамааран та алдаагаа өөрийн текстээр далдлахыг хүсэж болно, тэг , эсвэл хоосон нүд.

    Жишээ 1. Алдааг өөрийн текстээр солихын тулд VLOOKUP томьёотой IFERROR

    Хэрэв та стандарт алдааны тэмдэглэгээг захиалгат текстээр солихыг хүсвэл IFERROR доторх VLOOKUP томьёог хийж, 2-р аргументад ( утга_алдаа ) хүссэн текстээ бичнэ үү, жишээ нь "Одоогүй":

    IFERROR(VLOOKUP( ...),"Үгүй олдсон")

    Үндсэн хүснэгтийн B2 хайлтын утга, Хайлт доторх A2:B4 хайлтын мужтай.Хүснэгтэнд томьёо дараах хэлбэртэй байна:

    =IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), "Not found")

    Доорх дэлгэцийн зураг нь манай Excel IFERROR VLOOKUP томьёог ажиллаж байгааг харуулж байна:

    Үр дүн нь илүү ойлгомжтой, айдас багатай харагдаж байна, тийм үү?

    Үүнтэй адил та INDEX MATCH-г IFERROR:

    =IFERROR(INDEX('Lookup table'!$B$2:$B$5,MATCH(B2,'Lookup table'!$A$2:$A$5,0)), "Not found")

    IFERROR-тай хамт ашиглаж болно. INDEX MATCH томьёо нь хайлтын баганын зүүн талд байрлах баганаас (зүүн хайлт) утгыг татах, юу ч олдохгүй бол өөрийн текстийг буцаахыг хүсвэл ялангуяа хэрэгтэй.

    Жишээ 2. IFERROR VLOOKUP-г хоосон буцаана уу, эсвэл юу ч олдохгүй бол 0-г оруулна уу

    Хэрэв та хайлтын утга олдохгүй үед юу ч харуулахыг хүсэхгүй байвал IFERROR-д хоосон мөр ("") харуулахыг зөвшөөрнө үү:

    IFERROR(VLOOKUP(),"")

    Бидний жишээнд томъёо дараах байдалтай байна:

    =IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), "")

    Таны харж байгаагаар, Хайлтын утга хайлтын жагсаалтад байхгүй үед юу ч буцаадаггүй.

    Хэрэв та алдааг тэг утга -аар солихыг хүсвэл 0 сүүлийн a аргумент:

    =IFERROR(VLOOKUP(B2,'Lookup table'!$A$2:$B$5, 2, FALSE), 0)

    Анхааруулга! Excel IFERROR функц нь зөвхөн #N/A гэлтгүй бүх төрлийн алдааг илрүүлдэг. Сайн уу, муу юу? Бүх зүйл таны зорилгоос хамаарна. Хэрэв та бүх боломжит алдаануудыг далдлахыг хүсвэл IFERROR Vlookup нь явах арга зам юм. Гэхдээ энэ нь олон нөхцөл байдалд тохиромжгүй арга байж болох юм.

    Жишээ нь, хэрэв та өөрийн хүснэгтийн өгөгдөлд нэрлэсэн муж үүсгэсэн бөгөөд энэ нэрийг өөрийн хуудсанд буруу бичсэн бол.Vlookup томьёо, IFERROR нь #NAME-г барих уу? алдаа гаргаад "Одоогүй" эсвэл өөр бусад текстээр солино. Үүний үр дүнд, хэрэв та үсгийн алдааг өөрөө олж харахгүй бол таны томъёо буруу үр дүнд хүрч байгааг хэзээ ч мэдэхгүй байж магадгүй юм. Ийм тохиолдолд илүү үндэслэлтэй арга бол зөвхөн #Үгүй алдааг барих явдал юм. Үүний тулд Excel 2013 болон түүнээс дээш хувилбарт IFNA Vlookup томъёог, Excel-ийн бүх хувилбарт IF ISNA VLOOKUP томъёог ашиглана уу.

    Дээрх нь: VLOOKUP томьёоны хамтрагчийг сонгохдоо маш болгоомжтой байгаарай :)

    Үргэлж ямар нэг зүйл олохын тулд VLOOKUP дотор IFERROR-г байрлуул

    Дараах нөхцөл байдлыг төсөөлөөд үз дээ: та жагсаалтаас тодорхой утгыг хайгаад олохгүй байна. Танд ямар сонголт байна вэ? Үгүй алдаа авах эсвэл өөрийн мессежийг харуул. Үнэндээ гуравдахь сонголт бий - хэрэв таны үндсэн vlookup бүдэрч унавал тэнд байгаа өөр зүйлийг хайж олоорой!

    Жишээгээ цааш нь авч үзвэл, хэрэглэгчдэдээ өргөтгөл харуулах ямар нэгэн хяналтын самбар үүсгэцгээе. тодорхой оффисын дугаар. Үүнтэй төстэй зүйл:

    Тэгвэл D2 дахь оффисын дугаар дээр үндэслэн В баганаас өргөтгөлийг яаж татах вэ? Энэхүү энгийн Vlookup томьёогоор:

    =VLOOKUP($D$2,$A$2:$B$7,2,FALSE)

    Таны хэрэглэгчид D2-д хүчинтэй дугаар оруулсан тохиолдолд энэ нь сайн ажиллах болно. Гэхдээ хэрэглэгч байхгүй тоог оруулбал яах вэ? Энэ тохиолдолд төв оффис руу утасдацгаая! Үүний тулд дээрх томьёог дотор нь оруулаарайIFERROR-ын утга аргумент ба алдаа_утга аргумент дотор өөр Vlookup-г оруулна уу.

    Бүрэн томьёо нь бага зэрэг урт боловч төгс ажилладаг:

    =IFERROR(VLOOKUP("office "&$D$2,$A$2:$B$7,2,FALSE),VLOOKUP("central office",$A$2:$B$7,2,FALSE))

    Хэрэв оффисын дугаар олдвол хэрэглэгч холбогдох өргөтгөлийн дугаарыг авна:

    Хэрэв оффисын дугаар олдохгүй бол төв оффисын өргөтгөл харагдана:

    Томьёог бага зэрэг нягтруулахын тулд та өөр арга хэрэглэж болно:

    Эхлээд D2 дахь тоо байгаа эсэхийг шалгана уу. хайх баганад (бид col_index_num -г 1 болгож томьёог хайж А баганаас утгыг буцаасныг анхаарна уу): VLOOKUP(D2,$A$2:$B$7,1,FALSE)

    Хэрэв заасан оффисын дугаар олдохгүй бол бид "төв оффис" гэсэн мөрийг хайж олох бөгөөд энэ нь хайлтын жагсаалтад байгаа нь гарцаагүй. Үүний тулд та эхний VLOOKUP-г IFERROR-д боож, энэ хослолыг бүхэлд нь өөр VLOOKUP функц дотор байрлуулна уу:

    =VLOOKUP(IFERROR(VLOOKUP(D2,$A$2:$B$7,1,FALSE),"central office"),$A$2:$B$7,2)

    За, арай өөр томьёо, ижил үр дүн:

    Гэхдээ "төв оффис" гэж хайх ямар учиртай юм бол, та надаас асууж магадгүй. Яагаад өргөтгөлийн дугаарыг IFERROR дээр шууд оруулж болохгүй гэж? Учир нь өргөтгөл нь ирээдүйд хэзээ нэгэн цагт өөрчлөгдөж магадгүй юм. Хэрэв ийм зүйл тохиолдвол та VLOOKUP томьёо тус бүрийг шинэчлэх талаар санаа зоволгүйгээр зөвхөн нэг удаа эх хүснэгтэд өгөгдлөө шинэчлэх хэрэгтэй болно.

    Excel дээр хэрхэн дараалсан VLOOKUP хийх вэ

    Хэрэв чи хэрэгтэйӨмнөх хайлт амжилттай болсон эсвэл бүтэлгүйтсэн эсэхээс хамааран Excel-д дараалсан эсвэл гинжин гэж нэрлэгддэг Vlookups-ийг хийж, хоёр буюу түүнээс дээш IFERROR функцийг хооронд нь нэг нэгээр нь ажиллуулна уу:

    IFALROR(VLOOKUP(), IFALROR(VLOOKUP(), IFALROR(VLOOKUP(),"Олдсонгүй")))

    томъёо нь дараах логикоор ажилладаг:

    Хэрэв эхний VLOOKUP юу ч олоогүй бол эхний IFERROR нь алдаа гаргаж, өөр VLOOKUP ажиллуулна. Хэрэв хоёр дахь VLOOKUP амжилтгүй болвол хоёр дахь IFERROR алдаа гаргаж, гурав дахь VLOOKUP-г ажиллуулна гэх мэт. Хэрэв бүх Vlookup-ууд бүдэрсэн бол сүүлийн IFERROR таны мессежийг буцаана.

    Доорх жишээнд үзүүлсэн шиг та олон хуудас -д Vlookup хийх шаардлагатай үед энэ үүрлэсэн IFERROR томьёо ялангуяа хэрэгтэй.

    Та гурван өөр ажлын хуудсанд нэг төрлийн өгөгдлийн гурван жагсаалт (энэ жишээн дээрх оффисын дугаарууд) байгаа бөгөөд та тодорхой тооны өргөтгөл авахыг хүсч байна гэж бодъё.

    Хайлтын утгыг A2 нүдэнд байна гэж бодъё. Одоогийн хүснэгтэд хайлтын муж нь 3 өөр ажлын хуудсанд (Хойд, Өмнөд, Баруун) A2:B5 байна, дараах томьёо үр дүнтэй ажиллана:

    =IFERROR(VLOOKUP(A2,North!$A$2:$B$5,2,FALSE), IFERROR(VLOOKUP(A2,South!$A$2:$B$5,2,FALSE), IFERROR(VLOOKUP(A2,West!$A$2:$B$5,2,FALSE),"Not found")))

    Тиймээс, манай "гинжлэгдсэн Vlookups" томьёо нь бид тэдгээрийг томъёонд оруулсан дарааллаар гурван өөр хуудас хайдаг бөгөөд олсон эхний тохирохыг нь авчирдаг:

    Та IFERROR-г VLOOKUP-д ингэж ашигладаг. Excel. Уншиж байгаад баярлалаа, уулзана гэж найдаж байнаИрэх долоо хоногт манай блог дээр!

    Татаж авах боломжтой

    Excel IFERROR VLOOKUP томьёоны жишээ

    Майкл Браун бол програм хангамжийн хэрэгслийг ашиглан нарийн төвөгтэй процессуудыг хялбаршуулах хүсэл эрмэлзэлтэй, технологид дуртай хүн юм. Технологийн салбарт арав гаруй жил ажилласан туршлагатай тэрээр Microsoft Excel, Outlook, мөн Google Sheets болон Docs дээр ур чадвараа дээшлүүлсэн. Майклын блог нь өөрийн мэдлэг, туршлагаа бусадтай хуваалцах, бүтээмж, үр ашгийг дээшлүүлэхэд хялбар зөвлөмж, зааварчилгаа өгөх зорилготой юм. Та туршлагатай мэргэжилтэн эсвэл анхлан суралцаж байгаа эсэхээс үл хамааран Майклын блог нь эдгээр чухал програм хангамжийн хэрэгслээс хамгийн их ашиг хүртэх талаар үнэ цэнэтэй ойлголт, практик зөвлөгөөг санал болгодог.