Satura rādītājs
Šajā pamācībā ir izskaidrots, kā lietot vairākus IF programmā Excel, un ir sniegti vairāki ievietotie If formulas piemēri visbiežāk sastopamajiem uzdevumiem.
Ja kāds jums jautātu, kādu Excel funkciju jūs visbiežāk izmantojat, kāda būtu jūsu atbilde? Vairumā gadījumu tā ir Excel IF funkcija. Parastā If formula, kas pārbauda vienu nosacījumu, ir ļoti vienkārša un viegli uzrakstāma. Bet ko darīt, ja jūsu datiem nepieciešami sarežģītāki loģiskie testi ar vairākiem nosacījumiem? Šādā gadījumā vienā formulā var iekļaut vairākas IF funkcijas, un šīs vairākas Ifpaziņojumus sauc par Excel ieliktais IF . Lielākā ligzdotā If izteikuma priekšrocība ir tā, ka tas ļauj pārbaudīt vairāk nekā vienu nosacījumu un atkarībā no šo pārbaužu rezultātiem atgriezt dažādas vērtības, un tas viss tiek veikts vienā formulā.
Microsoft Excel ir ierobežojumi ligzdotu IF līmeņi . programmā Excel 2003 un jaunākās versijās bija atļauts izmantot līdz 7 līmeņiem. programmā Excel 2007 un jaunākās versijās vienā formulā var ievietot līdz 64 IF funkcijām.
Turpmāk šajā pamācībā atradīsiet pāris Excel ielikto If piemēru, kā arī detalizētu to sintakses un loģikas skaidrojumu.
1. piemērs. Klasiskā ielikta IF formula
Lūk, tipisks Excel If piemērs ar vairākiem nosacījumiem. Pieņemsim, ka A slejā ir saraksts ar studentiem un B slejā ir viņu eksāmenu rezultāti, un jūs vēlaties klasificēt rezultātus, izmantojot šādus nosacījumus:
- Lieliski: vairāk nekā 249
- Labi: no 249 līdz 200 (ieskaitot)
- Apmierinoši: no 199 līdz 150 (ieskaitot)
- Slikts: zem 150
Un tagad uzrakstīsim ieliktu IF funkciju, pamatojoties uz iepriekš minētajiem kritērijiem. Tiek uzskatīts, ka laba prakse ir sākt ar svarīgāko nosacījumu un saglabāt funkcijas pēc iespējas vienkāršākas. Mūsu Excel ielikta IF formula ir šāda:
=IF(B2>249, "Lieliski", IF(B2>=200, "Labi", IF(B2>150, "Apmierinoši", "Slikti"))))
Un darbojas tieši tā, kā tam vajadzētu:
Izpratne par Excel ligzdoto IF loģiku
Esmu dzirdējis, ka daži cilvēki saka, ka Excel multiple If viņus noved pie ārprāta :) Mēģiniet paskatīties uz to no cita leņķa:
Šī formula faktiski liek programmai Excel novērtēt formulas logical_test pirmās IF funkcijas un, ja nosacījums ir izpildīts, atdod vērtību, kas norādīta funkcijā value_if_true arguments. Ja 1. If funkcijas nosacījums nav izpildīts, tad tiek pārbaudīts 2. If apgalvojums, un tā tālāk.
IF( pārbaudīt, vai B2>=249, ja true - atgriezties "Lieliski", vai arīIF( pārbaudīt, vai B2>=200, ja true - atgriezties "Labi", vai arī
IF( pārbaudīt, vai B2>150, ja true - atgriezties "Apmierinoši", ja false -
atgriezties "Poor")))))
Piemērs 2. Vairāki If ar aritmētiskiem aprēķiniem
Lūk, vēl viens tipisks uzdevums: vienības cena mainās atkarībā no norādītā daudzuma, un jūsu mērķis ir uzrakstīt formulu, kas aprēķina kopējo cenu jebkuram konkrētajā šūnā ievadītajam vienību daudzumam. Citiem vārdiem sakot, jūsu formulai ir jāpārbauda vairāki nosacījumi un jāveic dažādi aprēķini atkarībā no tā, kādā daudzumu diapazonā ietilpst norādītais daudzums:
Vienība Daudzums | Cena par vienību |
1 līdz 10 | $20 |
11 līdz 19 | $18 |
20 līdz 49 | $16 |
50 līdz 100 | $13 |
Vairāk nekā 101 | $12 |
Šo uzdevumu var izpildīt arī, izmantojot vairākas IF funkcijas. Loģika ir tāda pati kā iepriekš minētajā piemērā, vienīgā atšķirība ir tā, ka norādīto daudzumu reizina ar vērtību, ko atgriež ievietotie IF (t. i., attiecīgo cenu par vienību).
Pieņemot, ka lietotājs ievada daudzumu šūnā B8, formula ir šāda:
=B8*IF(B8>=101, 12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, ""))))).
Rezultāts būs līdzīgs šim:
Kā jūs saprotat, šajā piemērā ir parādīta tikai vispārīga pieeja, un jūs varat viegli pielāgot šo ieliktu If funkciju atkarībā no konkrētā uzdevuma.
Piemēram, tā vietā, lai formulā "kodētu" cenas, varat atsaukties uz šūnām, kurās ir šīs vērtības (šūnas B2 līdz B6). Tas ļaus lietotājiem rediģēt avota datus, neatjauninot formulu:
=B8*IF(B8>=101,B6, IF(B8>=50, B5, IF(B8>=20, B4, IF( B8>=11, B3, IF(B8>=1, B2, "")))))
Vai arī varat iekļaut papildu IF funkciju(-as), kas nosaka summas diapazona augšējo, apakšējo vai abas robežas. Ja daudzums ir ārpus diapazona, formula parādīs paziņojumu "ārpus diapazona". Piemēram:
=IF(OR(B8>200,B8=101,12, IF(B8>=50, 13, IF(B8>=20, 16, IF( B8>=11, 18, IF(B8>=1, 20, ""))))))
Iepriekš aprakstītās ieliktās IF formulas darbojas visās Excel versijās. Excel 365 un Excel 2021 versijā šim pašam nolūkam varat izmantot arī funkciju IFS.
Uzlabotie Excel lietotāji, kas pārzina masīva formulas, var izmantot šo formulu, kas būtībā dara to pašu, ko iepriekš aplūkotā funkcija IF. Lai gan masīva formulu ir daudz grūtāk saprast, nemaz nerunājot par tās rakstīšanu, tai ir viena neapstrīdama priekšrocība - jūs norādāt šūnu diapazonu, kurā ir jūsu nosacījumi, nevis atsaucaties uz katru nosacījumu atsevišķi. Tas padara šo formulu daudz sarežģītāku.formula ir elastīgāka, un, ja lietotāji mainīs kādu no esošajiem nosacījumiem vai pievienos jaunu nosacījumu, formulā būs jāatjaunina tikai viena diapazona atsauce.
Excel ieliktais IF - padomi un triki
Kā tikko redzējāt, vairāku IF lietošana programmā Excel nav nekāda raķešu zinātne. Turpmāk sniegtie padomi palīdzēs jums uzlabot ieliktās IF formulas un novērst bieži sastopamās kļūdas.
Iestrādāti IF ierobežojumi
Excel 2007 - Excel 365 var ievietot līdz 64 IF funkcijām. Vecākajās Excel 2003 un jaunākajās versijās var izmantot līdz 7 ievietotām IF funkcijām. Tomēr tas, ka vienā formulā var ievietot daudz IF, nenozīmē, ka to vajadzētu darīt. Ņemiet vērā, ka katrs papildu līmenis apgrūtina formulas izpratni un problēmu novēršanu. Ja jūsu formulā ir pārāk daudz ievietotu līmeņu, jūs varat.optimizēt, izmantojot kādu no šīm alternatīvām.
Svarīga ir ieliktu IF funkciju secība
Excel iegultā IF funkcija izvērtē loģiskos testus tādā secībā, kādā tie parādās formulā, un, tiklīdz viens no nosacījumiem ir TRUE, nākamie nosacījumi netiek pārbaudīti. Citiem vārdiem sakot, formula apstājas pēc pirmā TRUE rezultāta.
Aplūkosim, kā tas darbojas praksē. Ja B2 ir vienāds ar 274, tālāk iestrādātā IF formula izvērtē pirmo loģisko testu (B2>249) un atgriež "Excellent", jo šis loģiskais tests ir TRUE:
=IF(B2>249, "Lieliski", IF(B2>=200, "Labi", IF(B2>150, "Apmierinoši", "Slikti"))))
Tagad mainīsim IF funkciju secību:
=IF(B2>150, "Apmierinoši", IF(B2>200, "Labi", IF(B2>249, "Izcili", "Slikti"))))
Formulā tiek pārbaudīts pirmais nosacījums, un, tā kā 274 ir lielāks par 150, arī šī loģiskā testa rezultāts ir TRUE. Tādējādi formula atgriež rezultātu "Apmierinoši", nepārbaudot citus nosacījumus.
Redziet, mainot IF funkciju secību, mainās rezultāts:
Izvērtēt formulas loģiku
Lai soli pa solim vērotu savas ieliktās IF formulas loģisko plūsmu, izmantojiet funkciju Izvērtēt formulu, kas atrodas logā Formula cilnē Formulas revīzija grupa. Pasvītrotā izteiksme ir daļa, kas pašlaik tiek vērtēta, un, noklikšķinot uz Novērtēt poga parādīs visus novērtēšanas procesa posmus.
Piemēram, turpmāk attēlā redzamās ievietotās IF formulas pirmā loģiskā testa novērtējums notiks šādi: B2>249; 274>249; TRUE; Excellent.
Iesprausto IF funkciju iekavās līdzsvarošana
Viena no galvenajām problēmām, kas saistītas ar programmā Excel ieliktajiem IF, ir iekavās iekavās iekavās ielikto pāru saskaņošana. Ja iekavās iekavās iekavās iekavās iekavās iekavās ievadi nesakrīt, jūsu formula nedarbosies. Par laimi, programmā Microsoft Excel ir pieejamas vairākas funkcijas, kas var palīdzēt līdzsvarot iekavās iekavās iekavās, rediģējot formulu:
- Ja ir vairāk nekā viens iekavju komplekts, iekavju pāri tiek iekrāsoti dažādās krāsās, lai sākuma iekavju komplekts sakristu ar beigu iekavju komplektu.
- Kad aizverat iekavas, Excel uz īsu brīdi izceļ atbilstošo pāri. Tāds pats treknināšanas vai mirgošanas efekts tiek radīts, kad pārvietojaties pa formulu, izmantojot bulttaustiņus.
Lai iegūtu vairāk informācijas, skatiet sadaļu Saskaņu pāru saskaņošana Excel formulās.
Atšķirīga attieksme pret tekstu un skaitļiem
Veidojot loģiskos testus ieliktajām IF formulām, atcerieties, ka pret tekstu un skaitļiem ir jāizturas atšķirīgi - teksta vērtības vienmēr iekļaujiet dubultās pēdiņās, bet nekad nelieciet pēdiņas ap skaitļiem:
Tiesības: =IF(B2>249, "Lieliski",...)
Kļūdaini: =IF(B2>"249", "Excellent",…)
Otrās formulas loģiskais tests atgriezīs FALSE pat tad, ja B2 vērtība būs lielāka par 249. Kāpēc? Tāpēc, ka 249 ir skaitlis un "249" ir skaitļu virkne, kas ir divas dažādas lietas.
Pievienojiet atstarpes vai rindu pārrāvumus, lai atvieglotu ielikto IF lasāmību.
Veidojot formulu ar vairākiem ievietotiem IF līmeņiem, formulas loģiku var padarīt skaidrāku, atdalot dažādas IF funkcijas ar atstarpēm vai rindu pārrāvumiem. Programmai Excel nerūp papildu atstarpes formulā, tāpēc varat neuztraukties par to, ka tās tiks izmainītas.
Lai noteiktu formulas daļu pārvietotu uz nākamo rindu, vienkārši noklikšķiniet uz vietas, kur vēlaties ievietot rindas pārrāvumu, un nospiediet Alt + Enter . Pēc tam paplašiniet formulas joslu, cik vien nepieciešams, un redzēsiet, ka jūsu ieliktajai IF formulai ir kļuvis daudz vieglāk saprast.
Alternatīvas programmā Excel ievietotajam IF
Lai izvairītos no septiņu ieliktu IF funkciju ierobežojuma programmā Excel 2003 un vecākās versijās un padarītu formulas kompaktākas un ātrākas, apsveriet iespēju izmantot turpmāk minētās ieliktu Excel IF funkciju alternatīvas.
- Lai pārbaudītu vairākus nosacījumus un, pamatojoties uz šo testu rezultātiem, atgrieztu dažādas vērtības, varat izmantot funkciju CHOOSE, nevis ieliktos IF.
- Izveidojiet atsauces tabulu un izmantojiet VLOOKUP ar aptuvenu sakritību, kā parādīts šajā piemērā: VLOOKUP, nevis iegulti IF programmā Excel.
- Izmantojiet IF ar loģiskajām funkcijām OR / AND, kā parādīts šajos piemēros.
- Izmantojiet masīva formulu, kā parādīts šajā piemērā.
- Apvienojiet vairākus IF izteikumus, izmantojot funkciju CONCATENATE vai apvienošanas operatoru (&). Formulas piemēru var atrast šeit.
- Pieredzējušiem Excel lietotājiem labākā alternatīva vairāku ieliktu IF funkciju izmantošanai varētu būt pielāgotas darblapas funkcijas izveide, izmantojot VBA.
Tas ir veids, kā lietot If formulu programmā Excel ar vairākiem nosacījumiem. Paldies, ka izlasījāt, un ceru, ka nākamnedēļ tiksimies mūsu emuārā.
Prakses darba burtnīca lejupielādei
Iesprausti If Excel faili (.xlsx fails)