Excel Nested IF мэдэгдлүүд - жишээ, шилдэг туршлага, хувилбарууд

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

Энэ заавар нь Excel-д олон нөхцөлийг шалгахын тулд үүрлэсэн IF функцийг хэрхэн ашиглахыг тайлбарладаг. Та Excel-д үүрлэсэн томьёог ашиглахаас өөр сайн хувилбар болох хэд хэдэн функцийг сурах болно.

Та Excel-ийн ажлын хуудсандаа шийдвэр гаргах логикийг хэрхэн хэрэгжүүлдэг вэ? Ихэнх тохиолдолд та нөхцөлөө шалгахын тулд IF томьёог ашигладаг бөгөөд хэрэв нөхцөл хангагдсан бол нэг утгыг буцаана, хэрэв нөхцөл хангагдаагүй бол өөр утгыг буцаана. Нэгээс олон нөхцөлийг үнэлж, үр дүнгээс хамааран өөр утгыг буцаахын тулд та олон IF-г бие биендээ оруулдаг.

Хэдийгээр маш түгээмэл боловч Excel-ийн олон нөхцөлийг шалгах цорын ганц арга бол IF-ийн мэдэгдэл биш юм. Энэ зааварт та судлахад үнэ цэнэтэй цөөн хэдэн хувилбаруудыг олох болно.

    Excel nested IF statement

    Энд Excel-ийн сонгодог IF-ийн ерөнхий томъёог энд оруулав. :

    IF( нөхцөл1, үр дүн1, IF( нөхцөл2, үр дүн2, IF( нөхцөл3, үр дүн3, үр дүн4)))

    Дараагийн IF функц бүр өмнөх функцын худал_худал аргумент дотор суулгагдсан байгааг харж болно. IF функц бүр өөрийн гэсэн олон тооны хаалтанд хаагдсан боловч бүх хаалтын хаалт нь томьёоны төгсгөлд байна.

    Манай ерөнхий үүрлэсэн IF томьёо нь 3 нөхцөлийг үнэлж, 4 өөр үр дүнг буцаана (үр дүн 4-ийг буцаана). аль нь ч байхгүй болТатаж авах ажлын ном

    Excel nested If statement - жишээнүүд (.xlsx файл)

    нөхцөл ҮНЭН). Хүний хэл рүү хөрвүүлбэл, энэ үүрлэсэн IF мэдэгдэл Excel-д дараах зүйлийг хийхийг хэлдэг:Туршилтын нөхцөл1, хэрэв ҮНЭН бол - үр дүн1буцаана, ХУДАЛ -

    туршилт <1 бол>нөхцөл2 , хэрэв ҮНЭН бол - r үр дүн2 буцаана, ХУДАЛ бол -

    туршилт нөхцөл3 , ҮНЭН бол - үр дүн3 -г буцаана. ХУДАЛ -

    буцах үр дүн4

    Жишээ нь, хэд хэдэн худалдагчийн хийсэн борлуулалтын дүнгээс хамаарч шимтгэлийг олж мэдье:

    Комисс Борлуулалт
    3% $1 - $50
    5% 51$ - $100
    7% $101 - $150
    10% 150$-с дээш

    Математикийн хувьд нэмэхийн дарааллыг өөрчлөхөд нийлбэр өөрчлөгдөхгүй. Excel-д IF функцуудын дарааллыг өөрчлөх нь үр дүнг өөрчилдөг. Яагаад? Учир нь үүрлэсэн IF томьёо нь эхний ҮНЭН нөхцөл -д тохирох утгыг буцаадаг. Тиймээс, өөрийн оруулсан IF мэдэгдлүүдэд томъёоны логикоос хамааран нөхцөлийг зөв чиглэлд - өндөрөөс бага эсвэл багааас өндөрт тохируулах нь маш чухал юм. Манай тохиолдолд эхлээд "хамгийн өндөр" нөхцөлийг шалгаад дараа нь "хоёр дахь хамгийн өндөр" нөхцөлийг шалгана.

    =IF(B2>150, 10%, IF(B2>=101, 7%, IF(B2>=51, 5%, IF(B2>=1, 3%, ""))))

    Хэрэв бид Урвуу дарааллаар, доороос дээш, үр дүн нь буруу байх болно, учир нь бидний томьёо эхний логик тестийн дараа (B2>=1) 1-ээс их утгаар зогсох болно. Бидэнд 100 доллар байна гэж үзье.борлуулалтад - энэ нь 1-ээс их байгаа тул томъёо нь бусад нөхцөлийг шалгахгүй бөгөөд үр дүнд нь 3%-ийг буцаана.

    Хэрэв та нөхцөлийг доод талаас нь өндөр хүртэл эрэмбэлэхийг хүсвэл "бага"-г ашиглана уу. " операторыг сонгоод эхлээд "хамгийн бага" нөхцөлийг, дараа нь "хоёр дахь хамгийн бага" нөхцөлийг үнэлнэ үү:

    =IF($B2<1, 0%, IF($B2<51, 3%, IF($B2<101, 5%, IF($B2<=150, 7%, 10%))))

    Таны харж байгаагаар логикийг бий болгохын тулд маш их бодох хэрэгтэй. үүрлэсэн IF мэдэгдлийн төгсгөл хүртэл зөв. Хэдийгээр Microsoft Excel нь нэг томьёонд 64 хүртэлх IF функцийг оруулахыг зөвшөөрдөг ч энэ нь таны ажлын хуудсанд хийхийг үнэхээр хүсдэггүй зүйл биш юм. Тиймээс, хэрэв та (эсвэл өөр хэн нэгэн) Excel-ийн IF томьёо яг юу болохыг олж мэдэхийг хичээж байгаа бол стратегиа эргэн харж, өөрийн зэвсэглэлд байгаа өөр хэрэгслийг сонгох цаг болжээ.

    Дэлгэрэнгүй мэдээлэл авах бол , Excel-ийн INSTED IF мэдэгдлийг харна уу.

    OR/AND нөхцлүүдтэй үүрлэсэн IF

    Хэрэв та хэд хэдэн өөр нөхцлүүдийг үнэлэх шаардлагатай бол OR-г ашиглан эдгээр нөхцлүүдийг илэрхийлж болно. AND функц, функцүүдийг IF хэллэгүүд дотор байрлуулж, дараа нь IF хэллэгүүдийг хооронд нь оруулаарай.

    Excel-д OR хэллэг бүхий IF-ийг үүрлэсэн

    OR функцийг ашигласнаар та хоёр ба түүнээс дээш тооны шалгах боломжтой. IF функц бүрийн логик тестийн өөр өөр нөхцөл ба OR аргументуудын аль нэг нь (дор хаяж нэг нь) ҮНЭН гэж үнэлэгдсэн бол ҮНЭН гэж буцаана. Энэ нь хэрхэн ажилладагийг харахын тулд үүнийг анхаарч үзээрэйдараах жишээ.

    Та борлуулалтын хоёр баганатай байна гэж бодъё, В баганад 1-р сарын борлуулалт, В баганад 2-р сарын борлуулалт гэж хэлье. Та хоёр баганад байгаа тоог шалгаж, илүү өндөр тоонд үндэслэн шимтгэлийг тооцохыг хүсэж байна. Өөрөөр хэлбэл, та дараах логиктой томьёог бүтээдэг: хэрэв 1 эсвэл 2-р сарын борлуулалт 150 доллараас дээш байвал худалдагч 10%, 1 эсвэл 2-р сарын борлуулалт $101-ээс их эсвэл тэнцүү бол худалдагч 7% шимтгэл авна. , гэх мэт.

    Үүнийг хийхийн тулд OR(B2>150, C2>150) гэх мэт цөөн хэдэн OF мэдэгдлийг бичиж, дээр дурдсан IF функцүүдийн логик тестүүдэд оруулаарай. Үүний үр дүнд та дараах томьёог авна:

    =IF(OR(B2>150, C2>150), 10%, IF(OR(B2>=101, C2>=101),7%, IF(OR(B2>=51, C2>=51), 5%, IF(OR(B2>=1, C2>=1), 3%, ""))))

    Мөн илүү өндөр борлуулалтын дүнгээс хамаарч шимтгэлийг оноож өгнө үү:

    Илүү томьёоны жишээг харна уу. Excel-ийн IF OR мэдэгдлийг харна уу.

    Хэрэв Excel-д AND хэллэгтэй IF-ийг оруулсан

    Хэрэв таны логик тест олон нөхцөлийг агуулж байгаа бөгөөд эдгээр бүх нөхцөлийг ҮНЭН гэж үнэлэх ёстой бол тэдгээрийг илэрхийлнэ үү. AND функцийг ашиглан.

    Жишээ нь, борлуулалтын бага тоонд үндэслэн шимтгэл оноохын тулд дээрх томьёог авч OR-г AND хэллэгээр солино. Өөрөөр хэлбэл, та Excel-д 1, 2-р сарын борлуулалт 150 доллараас их бол 10%, 1, 2-р сарын борлуулалт 101 доллартай тэнцэх эсвэл 101 доллартай тэнцэх бол 7% гэх мэтийг буцаахыг Excel-д хэлнэ.

    =IF(AND(B2>150, C2>150), 10%, IF(AND(B2>=101, C2>=101), 7%, IF(AND(B2>=51, C2>=51), 5%, IF(AND(B2>=1, C2>=1), 3%, ""))))

    Үр дүнд нь бидний оруулсан IF томьёо нь комиссыг тооцдогB ба C баганын доод тоонд үндэслэнэ. Хэрэв аль нэг багана хоосон байвал AND нөхцлийн аль нь ч хангагдаагүй тул шимтгэл огт байхгүй:

    Хэрэв та' d хоосон нүдний оронд 0% буцаахыг хүсэж байгаа бол сүүлийн аргумент дахь хоосон мөрийг (''") 0% -аар солино уу:

    =IF(AND(B2>150, C2>150), 10%, IF(AND(B2>=101, C2>=101), 7%, IF(AND(B2>=51, C2>=51), 5%, IF(AND(B2>=1, C2>=1), 3%, 0%))))

    Дэлгэрэнгүй мэдээллийг эндээс авах боломжтой: Олон БА/ЭСВЭЛ нөхцөл бүхий Excel IF.

    Excel-д үүрлэсэн IF-ын оронд VLOOKUP

    Та "масштаб"-тай харьцаж байх үед, өөрөөр хэлбэл тоон утгуудын тасралтгүй мужууд. Энэ нь нийлээд бүх хүрээг хамардаг тул ихэнх тохиолдолд та үүрлэсэн IF-уудын оронд VLOOKUP функцийг ашиглаж болно.

    Эхлэхийн тулд доорх дэлгэцийн агшинд үзүүлсэн шиг лавлагааны хүснэгт үүсгэнэ үү. Дараа нь <-ээр Vlookup томьёог үүсгэнэ үү. 16>ойролцоогоор тааруулах , өөрөөр хэлбэл муж_хайлт аргументыг ҮНЭН гэж тохируулсан.

    Хайлтын утгыг B2, лавлагааны хүснэгтийг F2:G5 гэж үзвэл томъёо дараах байдлаар явагдана. :

    =VLOOKUP(B2,$F$2:$G$5,2,TRUE)

    Бид хүснэгтийн_массив -г үнэмлэхүй лавлагаагаар засаж байгааг анхаарна уу ($F$2:$G$5) томьёог бусад нүднүүдэд зөв хуулахын тулд:

    Vlookup томьёоны сүүлчийн аргументыг ҮНЭН гэж тохируулснаар та Excel-д дараахыг хэлнэ. хамгийн ойр тохирохыг -г хайх - хэрвээ яг таарсан зүйл олдохгүй бол хайлтын утгаас бага дараагийн хамгийн том утгыг буцаана. Үүний үр дүнд таны томьёо нь зөвхөн хайлтын хүснэгтийн яг тодорхой утгуудтай таарч зогсохгүй, ямар ч утгуудтай таарах болнохооронд орох утгууд.

    Жишээ нь, B3 дахь хайлтын утга нь $95 байна. Хайлтын хүснэгтэд энэ тоо байхгүй бөгөөд яг таарч байгаа Vlookup нь энэ тохиолдолд #N/A алдаа гаргах болно. Гэхдээ ойролцоогоор таарч байгаа Vlookup нь хайлтын утгаас бага (манай жишээнд $50 байна) хамгийн ойрын утгыг олох хүртэл хайлтаа үргэлжлүүлж, ижил мөрийн хоёр дахь баганаас утгыг буцаана (энэ нь 5%).

    Гэхдээ хайлтын утга нь хайлтын хүснэгтийн хамгийн бага тооноос бага эсвэл хайлтын нүд хоосон байвал яах вэ? Энэ тохиолдолд Vlookup томьёо нь #N/A алдааг буцаана. Хэрэв энэ нь таны хүсч буй зүйл биш бол IFERROR дотор VLOOKUP-г байрлуулж, хайлтын утга олдохгүй үед гаралтын утгыг нийлүүлнэ үү. Жишээ нь:

    =IFERROR(VLOOKUP(B2, $F$2:$G$5, 2, TRUE), "Outside range")

    Анхаарах зүйл! Ойролцоогоор тохирох Vlookup томьёо зөв ажиллахын тулд хайлтын хүснэгтийн эхний баганыг өсөх дарааллаар , хамгийн жижигээс том руу эрэмбэлсэн байх ёстой.

    Дэлгэрэнгүй мэдээллийг "Яг тохирох" хэсгээс үзнэ үү. VLOOKUP ба ойролцоогоор таарч байгаа VLOOKUP.

    IFS мэдэгдлийг үүрлэсэн IF функцийн оронд

    Excel 2016 болон түүнээс хойшхи хувилбаруудад Microsoft нь олон нөхцөлийг үнэлэх тусгай функцийг нэвтрүүлсэн - IFS функц.

    IFS томьёо нь 127 хүртэлх логик_тест / үнэн_хэрэв_үнэн хосыг зохицуулах боломжтой бөгөөд ҮНЭН гэж үнэлдэг эхний логик тест "ялах":

    IFS(логик_тест1,үнэ_хэрэв_үнэн1, [логик_туршилт2, үнэ_хэрвээ_үнэн2]...)

    Дээрх синтаксийн дагуу бидний үүрлэсэн IF томъёог дараах байдлаар сэргээж болно:

    =IFS(B2>150, 10%, B2>=101, 7%, B2>=51, 5%, B2>0, 3%)

    IFS функц нь заасан нөхцлүүдийн аль нь ч хангагдаагүй тохиолдолд #N/A алдааг буцаана. Үүнээс зайлсхийхийн тулд та томьёоныхоо төгсгөлд нэг логик_туршилт / үнэн_хэрэв_үнэн нэмэх боломжтой бөгөөд энэ нь 0 эсвэл хоосон мөр ("") эсвэл аль нь ч байхгүй бол таны хүссэн утгыг буцаана. өмнөх логик тестүүд ҮНЭН байна:

    =IFS(B2>150, 10%, B2>=101, 7%, B2>=51, 5%, B2>0, 3%, TRUE, "")

    Үүний үр дүнд, хэрэв В баганын харгалзах нүд байвал бидний томъёо #N/A алдааны оронд хоосон мөр (хоосон нүд) буцаана. хоосон эсвэл текст эсвэл сөрөг тоо агуулсан.

    Тайлбар. Оруулсан IF-ын нэгэн адил Excel-ийн IFS функц нь ҮНЭН гэж үнэлдэг эхний нөхцөлтэй харгалзах утгыг буцаадаг тул IFS томьёоны логик тестийн дараалал чухал байдаг.

    Дэлгэрэнгүй мэдээллийг Excel IFS функцээс харна уу. IF-ийн дотор орсон IF.

    Excel-д үүрлэсэн IF томьёоны оронд СОНГОХ

    Excel-ийн нэг томьёоны доторх олон нөхцөлийг шалгах өөр нэг арга бол CHOOSE функцийг ашиглах бөгөөд энэ нь дараахаас утгыг буцаах зорилготой юм. Жагсаалтыг тухайн утгын байрлал дээр үндэслэсэн болно.

    Манай түүвэр өгөгдлийн багцад хэрэглэсэн томъёо нь дараах хэлбэртэй байна:

    =CHOOSE((B2>=1) + (B2>=51) + (B2>=101) + (B2>150), 3%, 5%, 7%, 10%)

    Эхний аргумент дахь ( индексийн_тоо ), та бүх нөхцлийг үнэлж, үр дүнг нэмнэ. ӨгсөнҮНЭН нь 1-тэй, ХУДАЛ нь 0-тэй тэнцэж байгаа тул та буцаах утгын байрлалыг тооцоолно.

    Жишээ нь, B2 дахь утга нь $150 байна. Энэ утгын хувьд эхний 3 нөхцөл нь ҮНЭН, сүүлчийнх нь (B2 > 150) ХУДАЛ байна. Тэгэхээр индекс_тоо нь 3-тай тэнцүү бөгөөд 3-р утгыг буцаана гэсэн үг бөгөөд энэ нь 7% байна.

    Зөвлөгөө. Логик тестүүдийн аль нь ч ҮНЭН биш бол индекс_тоо нь 0-тэй тэнцүү байх ба томъёо нь #VALUE! алдаа. Хялбар засвар бол СОНГОХ функцийг IFERROR функцэд дараах байдлаар боож өгөх явдал юм:

    =IFERROR(CHOOSE((B2>=1) + (B2>=51) + (B2>=101) + (B2>150), 3%, 5%, 7%, 10%), "")

    Дэлгэрэнгүй мэдээллийг Excel-ийн CHOOSE функцийг томъёоны жишээн дээр харна уу.

    SWITCH функц нь Excel-д үүрлэсэн IF-ын товч хэлбэр юм.

    Та масштабаар бус урьдчилан тодорхойлсон утгуудын тогтсон багцтай харьцаж байгаа тохиолдолд SWITCH функц нь иж бүрдэлээс авсаархан хувилбар байж болно. үүрлэсэн IF мэдэгдлүүд:

    SWITCH(илэрхийлэл, утга1, үр дүн1, утга2, үр дүн2, …, [өгөгдмөл])

    SWITCH функц нь утга жагсаалтын эсрэг илэрхийлэл -г үнэлдэг. эхний олсон таарч тохирох үр дүн -г буцаана.

    Хэрэв та борлуулалтын дүнгээр бус, дараах үнэлгээнд үндэслэн шимтгэлийг тооцохыг хүсвэл энэхүү компактыг ашиглаж болно. Excel-ийн IF томъёоны хувилбар:

    =SWITCH(C2, "A", 10%, "B", 7%, "C", 5%, "D", 3%, "")

    Эсвэл та доорх дэлгэцийн агшинд үзүүлсэн шиг лавлагааны хүснэгт хийж, хатуу кодлогдсон утгын оронд нүдний лавлагааг ашиглаж болно:

    =SWITCH(C2, $F$2, $G$2, $F$3, $G$3, $F$4, $G$4, $F$5, $G$5, "")

    ГуйяБид томьёог бусад нүд рүү хуулахдаа өөрчлөгдөхөөс сэргийлэхийн тулд эхнийхээс бусад бүх лавлагааг $ тэмдгээр түгжиж байгааг анхаарна уу:

    Анхаар. SWITCH функц нь зөвхөн Excel 2016 болон түүнээс дээш хувилбарт боломжтой.

    Дэлгэрэнгүй мэдээллийг SWITCH функц - IF мэдэгдлийн авсаархан хэлбэрийг харна уу.

    Excel дээр олон IF функцийг нэгтгэх

    Өмнөх жишээнд дурьдсанчлан SWITCH функцийг зөвхөн Excel 2016-д нэвтрүүлсэн. Хуучин Excel хувилбарт ижил төстэй ажлуудыг гүйцэтгэхийн тулд та Concatenate оператор (&) эсвэл CONCATENATE функцийг ашиглан хоёр ба түүнээс дээш IF мэдэгдлийг нэгтгэж болно. .

    Жишээ нь:

    =(IF(C2="a", 10%, "") & IF(C2="b", 7%, "") & IF(C2="c", 5%, "") & IF(C2="d", 3%, ""))*1

    Эсвэл

    =CONCATENATE(IF(C2="a", 10%, ""), IF(C2="b", 7%, ""), IF(C2="c", 5%, "") & IF(C2="d", 3%, ""))*1

    Таны хувьд анзаарсан бол бид хоёр томъёонд үр дүнг 1-ээр үржүүлнэ. Энэ нь Concatenate томъёогоор буцаасан мөрийг тоо болгон хувиргахад хийгддэг. Хэрэв таны хүлээгдэж буй гаралт нь текст байвал үржүүлэх үйлдлийг хийх шаардлагагүй.

    Дэлгэрэнгүй мэдээллийг Excel-ийн CONCATENATE функцээс үзнэ үү.

    Microsoft Excel нь цөөн хэдэн сайн хувилбаруудыг санал болгож байгааг харж болно. IF-ийн томьёог үүрлэсэн бөгөөд энэ заавар нь танд тэдгээрийг ажлын хуудсан дээрээ хэрхэн ашиглах талаар зарим зөвлөмжийг өгсөн гэж найдаж байна. Энэхүү гарын авлагад дурдсан жишээнүүдийг илүү нарийвчлан үзэхийн тулд та доорх бидний жишээ ажлын номыг татаж авахыг урьж байна. Уншиж байгаад баярлалаа, дараа долоо хоногт манай блог дээр уулзана гэж найдаж байна!

    Дасгал хий

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