Annonse
Alle vet hvor allsidig IF-setningen er i et skriptet program, men visste du at du kan bruke mye av den samme logikken inne i en celle i Excel?
En grunnleggende definisjon av en IF uttalelse i et program Hvordan bruk av "Hvis-da" -logikk kan hjelpe deg med å nå dine målVi setter resolusjoner for det nye året med gode intensjoner. Det handler om selvforbedring. Men intensjoner er ikke nok. For å følge gjennom, trenger du en handlingsplan. Les mer er at den lar deg sende ut noe spesifikt basert på resultatene fra flere innganger. Du kan utføre helt forskjellige beregninger basert på resultatet fra en annen beregning. Du kan opptre betinget formatering Formater automatisk data i Excel-regneark med betinget formateringExcels betingede formateringsfunksjon lar deg formatere individuelle celler i et Excel-regneark basert på verdien. Vi viser deg hvordan du bruker dette til forskjellige hverdagsoppgaver. Les mer . Du kan til og med basere utdataene på strengsøk på inputceller.
Hvis dette høres komplisert ut, ikke bekymre deg. La oss se på noen kreative måter du kan bruke IF-setninger i Excel.
Hva er en IF-uttalelse i Excel?
Når de fleste tenker på å bruke en IF-setning i Excel, tenker de på VBA. Dette er fordi en IF-setning vanligvis er logikk som brukes i programmeringsverdenen. Du kan imidlertid bruke denne samme programmeringslogikken rett i selve regnearkcellen.

Når du skriver “= IF (” i cellen), vil du se hvordan syntaksen til IF-setningen din trenger å se ut for å fungere riktig. Det grunnleggende kravet er bare en "logisk test". Som standard vil utgangen til cellen være SANN eller FALSE, men du kan tilpasse det ved å inkludere tilleggsparametere i funksjonen.
Hvordan en grunnleggende IF-funksjon fungerer
La oss først se på en grunnleggende IF-funksjon. I eksemplet regnearket over har jeg fire aktiviteter som jeg logger relatert til bilen min. Jeg registrerer datoen når noen av fire hendelser skjer: oljeskift, bilreparasjon, registrering eller fornyelse av forsikring.
La oss si at hvis "Reparert" -kolonnen inneholder et "JA", vil jeg at hendelsestypen skal ha "REPAIR". Ellers skal det være “IKKE-REPAIR”. Logikken for denne IF-uttalelsen er veldig enkel:
= IF (C2 = "JA", "Repair", "Non-Repair")
Fylling av hele kolonnen med denne formelen gir følgende resultater:

Dette er nyttig logikk, men i akkurat dette tilfellet gir det ikke veldig mening. Alt noen trenger å gjøre er å se på “Reparert” -kolonnen for å identifisere om den datoen innebar en reparasjon eller ikke.
Så la oss utforske noen mer avanserte IF-funksjonsuttalelser for å se om vi kan gjøre denne kolonnen litt mer nyttig.
OG- og IF-uttalelser
Akkurat som i et vanlig program, noen ganger for å undersøke to eller tre forhold som er avhengige av hverandre, må du bruke OG-logikk. Det samme er tilfelle her.
La oss definere to nye begivenhetstyper: Planlagt eller Uplanlagt.
For dette eksemplet skal vi fokusere på bare Oljeskift kolonne. Jeg vet at jeg vanligvis planlegger oljeskiftene mine den andre dagen i hver måned. Enhver oljeskift som ikke var den andre dagen i måneden, var en ikke planlagt oljeskift.
For å identifisere disse, må vi bruke OG-logikk som dette:
= IF (OG (DAG (A2) = 2, B2 = "JA"), "Planlagt", "ikke-planlagt")
Resultatene ser slik ut:

Dette fungerer bra, men som du ser er det en liten logisk feil. Den fungerer for å vise når oljeforandringer skjer på forventede datoer - de viser seg som “Planlagt”. Men når oljeskiftkolonnen er tom, skal utgangen også være tom. Det gir ikke mening å returnere et resultat i de tilfellene fordi det aldri har skjedd noen oljeskift.
For å oppnå dette, går vi videre til neste avanserte IF-funksjonstime: nestede IF-utsagn.
Nested IF-uttalelser
Med utgangspunkt i den siste funksjonen, må du legge til en annen IF-setning i den opprinnelige IF-setningen. Dette skal returnere et tomt hvis den opprinnelige oljeskiftcellen er tom.
Slik ser uttalelsen ut:
= IF (ISBLANK (B2), "", IF (OG (DAG (A2) = 2, B2 = "JA"), "Planlagt", "ikke-planlagt"))
Nå begynner utsagnet å se litt sammensatt ut, men det er det ikke hvis du ser nøye på. Den første IF-setningen sjekker om cellen i B-kolonnen er tom. Hvis det er det, returnerer det et tomt eller “”.
Hvis den ikke er blank, setter du inn den samme IF-setningen som vi brukte i delen ovenfor, i den falske delen av den første IF-setningen. På denne måten sjekker du bare etter og skriver resultater om datoen for oljeskiftet da det var en faktisk oljeskift som fant sted. Ellers er cellen tom.

Som du kan forestille deg, kan dette bli veldig komplekst. Så når du hekker IF-uttalelser, ta det alltid ett skritt av gangen. Test individuell IF-setningslogikk før du begynner å hekke dem sammen. For når du først har noen av disse nestede, kan feilsøking av dem bli et skikkelig mareritt.
ELLER uttalelser
Nå skal vi slå opp logikken bare et hakk. La oss si at denne gangen det jeg vil gjøre er å returnere "Årlig vedlikehold" hvis en oljeskift eller reparasjon kombineres med registrering eller forsikring gjøres på samme tid, men bare “Rutinemessig vedlikehold” hvis bare en oljeskift var gjort. Det høres komplisert ut, men med riktig IF-uttalelseslogikk er det slett ikke vanskelig.
Denne typen logikk krever kombinasjonen av både et nestet IF-utsagn og et par OR-utsagn. Slik vil uttalelsen se ut:
= IF (ELLER (B2 = "JA", C2 = "JA"), IF (ELLER (D2 = "JA", E2 = "JA"), "Årlig vedlikehold", "Rutinemessig vedlikehold"), "")
Slik ser resultatene ut:

Det er bemerkelsesverdig den typen komplekse analyser du kan utføre bare ved å kombinere forskjellige logiske operatører inne i nestede IF-uttalelser.
Resultater basert på verdiområder
Det er ofte veldig nyttig å konvertere verdiområder til et slags tekstresultat. Dette kan være så enkelt som å konvertere en temperatur fra 0 til 50 grader F til “kald”, 50 til 80 som “varm”, og alt over 80 så varmt.
Lærere har sannsynligvis mest behov for denne logikken på grunn av bokstavtall. I det følgende eksemplet skal vi utforske hvordan du konverterer en numerisk verdi til tekst basert på et slikt område.

La oss si at en lærer bruker følgende områder for å bestemme bokstavkarakter:
- 90 til 100 er et A
- 80 til 90 er en B
- 70 til 80 er en C
- 60 til 70 er et D
- Under 60 er en F
Slik ser den typen uttalelse med flere nestede-IF ut:
= IF (B2> 89, "A", IF (B2> 79, "B", IF (B2> 69, "C", IF (B2> 59, "D", "F"))))
Hvert rede er det neste sortimentet i serien. Du trenger bare å være veldig forsiktig med å lukke uttalelsen med riktig antall parenteser, ellers fungerer ikke funksjonen riktig.
Slik ser det resulterende arket ut:

Som du kan se, lar dette deg representere et hvilket som helst nummer i form av en beskrivende streng. Den vil også oppdatere automatisk hvis den numeriske verdien på arket noen gang endres.
Å bruke IF-THEN logikk er kraftig
Som programmerer vet du allerede kraften i IF-uttalelser. De lar deg automatisere logisk analyse til enhver beregning. Dette er veldig kraftig på et skriptspråk, men som du kan se er det like kraftig i cellene i et Excel-regneark.
Med litt kreativitet kan du gjøre noen veldig imponerende ting 3 Crazy Excel-formler som gjør fantastiske tingExcel-formler har et kraftig verktøy i betinget formatering. Denne artikkelen dekker tre måter å øke produktiviteten med MS Excel. Les mer med IF-uttalelseslogikk og andre formler i Excel.
Hva slags unik logikk har du kommet frem til ved å bruke IF-setninger i Excel? Del dine egne ideer og tips i kommentarfeltet nedenfor!
Ryan har en BSc-grad i elektroteknikk. Han har jobbet 13 år innen automatisering, 5 år innen IT, og er nå en applikasjonsingeniør. Han var tidligere administrerende redaktør for MakeUseOf, han snakket på nasjonale konferanser om datavisualisering og har blitt omtalt på nasjonal TV og radio.