Enhavtabelo
La lernilo klarigas kiel uzi plurajn IF en Excel kaj provizas kelkajn nestitajn If-formulekzemplojn por plej oftaj taskoj.
Se iu demandas vin, kian Excel-funkcion vi uzas plej ofte, kia estus via respondo? Plejofte, ĝi estas la funkcio Excel IF. Regula If-formulo, kiu testas ununuran kondiĉon, estas tre simpla kaj facile skribi. Sed kio se viaj datumoj postulas pli ellaboritajn logikan testojn kun pluraj kondiĉoj? En ĉi tiu kazo, vi povas inkluzivi plurajn IF-funkciojn en unu formulo, kaj ĉi tiuj multoblaj If-deklaroj nomiĝas Excel Nested IF . La plej granda avantaĝo de la nestita If-deklaro estas, ke ĝi permesas vin kontroli pli ol unu kondiĉon kaj redoni malsamajn valorojn depende de la rezultoj de tiuj kontroloj, ĉio en ununura formulo.
Microsoft Excel havas limojn al la niveloj de nestitaj IF-oj . En Excel 2003 kaj pli malaltaj, ĝis 7 niveloj estis permesitaj. En Excel 2007 kaj pli alte, vi povas nesti ĝis 64 IF-funkciojn en unu formulo.
Plue en ĉi tiu lernilo, vi trovos kelkajn Excel nestitajn If-ekzemplojn kune kun detala klarigo pri ilia sintakso kaj logiko. .
Ekzemplo 1. Klasika nestita IF-formulo
Jen tipa ekzemplo de Excel Se kun pluraj kondiĉoj. Supozu, ke vi havas liston de studentoj en kolumno A kaj iliajn ekzamenajn poentarojn en kolumno B, kaj vi volas klasifiki la poentarojn per la jenakondiĉoj:
- Bonega: Pli ol 249
- Bona: inter 249 kaj 200, inkluzive
- Kontentiga: inter 199 kaj 150, inkluzive
- Malbona : Sub 150
Kaj nun, ni skribu nestitan IF-funkcion bazitan sur la ĉi-supraj kriterioj. Estas konsiderata bona praktiko komenci kun la plej grava kondiĉo kaj konservi viajn funkciojn kiel eble plej simplaj. Nia Excel nestita IF-formulo iras jene:
=IF(B2>249, "Excellent", IF(B2>=200, "Good", IF(B2>150, "Satisfactory", "Poor")))
Kaj funkcias ĝuste kiel ĝi devus:
Komprenante Excel-nestigitan IF-logikon
Mi aŭdis kelkajn homojn diri, ke Excel-multoblo Se frenezigas ilin :) Provu rigardi ĝin laŭ malsama angulo:
Kia estas la formulo efektive diras Excel fari estas taksi la logikan_teston de la unua IF-funkcio kaj, se la kondiĉo estas plenumita, redonu la valoron provizitan en la argumento value_if_true . Se la kondiĉo de la 1-a If-funkcio ne estas plenumita, tiam provu la 2-an If-propozicion, kaj tiel plu.
IF( kontrolu ĉuB2>=249, se vera - redonu"Bonege", aŭ alieIF( kontrolu ĉu B2>=200, se vera - revenu "Bone", aŭ alie
IF( kontrolu se B2>150, se vera - redonu "Kontentiga", se malvera -
revenu "Malriĉa")))
Ekzemplo 2. Multoblaj Se kun aritmetikaj kalkuloj
Jen alia tipa tasko: la unuoprezo varias laŭ la specifita kvanto, kaj via celo estas skribi formulon, kiukalkulas la totalan prezon por iu ajn kvanto da eroj enigo en specifa ĉelo. Alivorte, via formulo devas kontroli plurajn kondiĉojn kaj fari malsamajn kalkulojn depende de kia kvanto de la specifita kvanto apartenas:
Unuo-kvanto | Prezo po unuo |
1 ĝis 10 | $20 |
11 ĝis 19 | $18 |
20 ĝis 49 | $16 |
50 ĝis 100 | $13 |
Pli ol 101 | $12 |
Ĉi tiu tasko ankaŭ povas esti plenumita uzante plurajn IF-funkciojn. La logiko estas la sama kiel en la ĉi-supra ekzemplo, la nura diferenco estas, ke vi multiplikas la specifitan kvanton per la valoro redonita de nestitaj IF-oj (t.e. la responda prezo po unuo).
Supozinte, ke la uzanto enigas la kvanton en ĉelo B8, la formulo estas jena:
=B8*IF(B8>=101, 12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, "")))))
Kaj la rezulto aspektos io simila al ĉi tio:
Kiel vi komprenas , ĉi tiu ekzemplo montras nur la ĝeneralan aliron, kaj vi povas facile personecigi ĉi tiun nestitan If-funkcion depende de via aparta tasko.
Ekzemple, anstataŭ "malfacile kodigi" la prezojn en la formulo, vi povas referenci la ĉeloj enhavantaj tiujn valorojn (ĉeloj B2 ĝis B6). Ĉi tio ebligos viajn uzantojn redakti la fontajn datumojn sen devi ĝisdatigi la formulon:
=B8*IF(B8>=101,B6, IF(B8>=50, B5, IF(B8>=20, B4, IF( B8>=11, B3, IF(B8>=1, B2, "")))))
Aŭ, vi eble volas inkluzivi plian IF-funkcion. (s) kiu fiksas supraĵon,pli malaltaj aŭ ambaŭ limoj de la kvanto-gamo. Kiam la kvanto estas ekster la intervalo, la formulo montros mesaĝon "ekster la intervalo". Ekzemple:
=IF(OR(B8>200,B8=101,12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, ""))))))
La nestitaj IF-formuloj priskribitaj supre funkcias en ĉiuj versioj de Excel. En Excel 365 kaj Excel 2021, vi ankaŭ povas uzi la IFS-funkcion por la sama celo.
Progresintaj Excel-uzantoj, kiuj konas tabelajn formulojn, povas uzi ĉi tiun formulon, kiu esence faras la samon kiel la nestigita IF-funkcio. supre diskutita. Kvankam la tabelformulo estas multe pli malfacile komprenebla, lasu skribi, ĝi havas unu nediskuteblan avantaĝon - vi specifu la gamon da ĉeloj enhavantaj viajn kondiĉojn prefere ol referenci ĉiun kondiĉon individue. Ĉi tio igas la formulon pli fleksebla, kaj se viaj uzantoj ŝanĝas iun el la ekzistantaj kondiĉoj aŭ aldonas novan, vi nur devos ĝisdatigi ununuran intervalreferencon en la formulo.
Excel nestita IF - konsiloj kaj lertaĵoj
Kiel vi ĵus vidis, ne ekzistas raketscienco en uzado de multobla IF en Excel. La jenaj konsiletoj helpos vin plibonigi viajn nestitajn IF-formulojn kaj malhelpi oftajn erarojn.
Nestitaj IF-limoj
En Excel 2007 - Excel 365, vi povas nesti ĝis 64 IF-funkcioj. En pli malnovaj versioj de Excel 2003 kaj pli malaltaj, ĝis 7 nestitaj IF-funkcioj povas esti uzataj. Tamen, la fakto, ke vi povas nesti multajn IF-ojn en unu formulo, ne signifas, ke vi devus.Bonvolu memori, ke ĉiu plia nivelo faras vian formulon pli malfacile komprenebla kaj solvi problemojn. Se via formulo havas tro multajn nestitajn nivelojn, vi eble volas optimumigi ĝin uzante unu el ĉi tiuj alternativoj.
La ordo de nestitaj IF-funkcioj gravas
La Excel-nestita IF-funkcio taksas la logikan testojn. en la ordo en kiu ili aperas en la formulo, kaj tuj kiam unu el la kondiĉoj taksas VERA, la postaj kondiĉoj ne estas testitaj. Alivorte, la formulo ĉesas post la unua VERA rezulto.
Ni vidu kiel ĝi funkcias praktike. Kun B2 egala al 274, la nestita IF-formulo sube taksas la unuan logikan teston (B2>249), kaj liveras "Bonege" ĉar ĉi tiu logika testo estas VERA:
=IF(B2>249, "Excellent", IF(B2>=200, "Good", IF(B2>150, "Satisfactory", "Poor")))
Nun, ni ni inversigi la ordon de SE funkcioj:
=IF(B2>150, "Satisfactory", IF(B2>200, "Good", IF(B2>249, "Excellent", "Poor")))
La formulo testas la unuan kondiĉon, kaj ĉar 274 estas pli granda ol 150, la rezulto de ĉi tiu logika testo ankaŭ estas VERA. Sekve, la formulo liveras "Kontentiga" sen provi aliajn kondiĉojn.
Vi vidas, ŝanĝi la ordon de IF-funkcioj ŝanĝas la rezulton:
Taksi la formulon. logiko
Por rigardi la logikan fluon de via nestita IF-formulo paŝo-post-paŝe, uzu la funkcion Taksi Formulo situantan sur la langeto Formulo , en la Formula Revizio grupo. La substrekita esprimo estas la parto nuntempe taksata, kaj alklakante la Taksi butono montros al vi ĉiujn paŝojn en la taksadprocezo.
Ekzemple, la taksado de la unua logika testo de la enigita IF-formulo montrita en la ekrankopio malsupre iros jene: B2>249; 274>249; VERA; Bonege.
Ekvilibro de krampoj de nestitaj IF-funkcioj
Unu el la ĉefaj defioj kun nestitaj IF-oj en Excel estas kongruaj parentezaj paroj. Se la krampoj ne kongruas, via formulo ne funkcios. Feliĉe, Microsoft Excel provizas kelkajn funkciojn, kiuj povas helpi vin ekvilibrigi la krampojn dum redaktado de formulo:
- Se vi havas pli ol unu aron da krampoj, la krampoj estas ombritaj en malsamaj koloroj, do ke la malferma krampo kongruas kun la ferma.
- Kiam vi fermas krampon, Excel mallonge reliefigas la kongruan paron. La sama grasa aŭ "flagreta" efiko estas produktita kiam vi moviĝas tra la formulo uzante la sagoklavojn.
Por pliaj informoj, bonvolu vidi Kongrui krampojn. paroj en Excel-formuloj.
Traktu tekston kaj nombrojn alimaniere
Kiam konstruas logikajn testojn de viaj nestitaj IF-formuloj, memoru, ke teksto kaj nombroj estu traktataj malsame - ĉiam enmetu tekstajn valorojn inter citiloj, sed neniam metu citilojn ĉirkaŭ ciferojn:
Ĝuste: =IF(B2>249, "Bonege",...)
Malĝuste: =IF(B2> "249", "Bonege",...)
La logika testo de ladua formulo redonos FALSE eĉ se la valoro en B2 estas pli granda ol 249. Kial? Ĉar 249 estas nombro kaj "249" estas nombra ĉeno, kiuj estas du malsamaj aferoj.
Aldonu spacojn aŭ linio-rompojn por fari nestitajn IF-ojn pli facile legeblaj
Kiam oni konstruas formulon kun multoblaj. nestitaj IF-niveloj, vi povas fari la logikon de la formulo pli klara disigante malsamajn IF-funkciojn per spacoj aŭ linio-rompoj. Excel ne zorgas pri kroma interspaco en formulo, do vi eble ne zorgas pri difektado de ĝi.
Por movi certan parton de la formulo al la sekva linio, simple alklaku kie vi volas enmeti linion. , kaj premu Alt + Enter . Poste, vastigu la formulbreton tiom multe kiom necesas kaj vi vidos, ke via nestita IF-formulo fariĝis multe pli facile komprenebla.
Alternativoj al nestita IF en Excel
Por ĉirkaŭiri la limon de sep nestitaj IF-funkcioj en Excel 2003 kaj pli malnovaj versioj kaj fari viajn formulojn pli kompaktaj kaj rapidaj, konsideru uzi la jenajn alternativojn al nestitaj Excel-IF-funkcioj.
- Al testi plurajn kondiĉojn kaj redoni malsamajn valorojn surbaze de la rezultoj de tiuj testoj, vi povas uzi la funkcion ELEKTI anstataŭ nestitajn IF-ojn.
- Konstruu referencan tabelon kaj uzu VLOOKUP kun proksimuma kongruo kiel montrite en ĉi tiu ekzemplo: VLOOKUP. anstataŭ nestita IF en Excel.
- Uzu IF kun logikaj funkcioj AŬ / KAJ, kiel montrite en ĉi tiujekzemploj.
- Uzu tabelan formulon kiel montrita en ĉi tiu ekzemplo.
- Kombinu plurajn IF-deklarojn uzante la funkcion CONCATENATE aŭ la kunkatenigi operatoron (&). Ekzemplo de formulo troveblas ĉi tie.
- Por spertaj uzantoj de Excel, la plej bona alternativo por uzi plurajn nestitajn IF-funkciojn povus esti krei kutiman laborfolion per VBA.
Jen kiel vi uzas If-formulon en Excel kun pluraj kondiĉoj. Mi dankas vin pro legi kaj esperas vidi vin en nia blogo venontsemajne.
Praktiku laborlibron por elŝuto
Nestitaj If Excel-deklaroj (.xlsx-dosiero)