Innholdsfortegnelse
Denne korte opplæringen forklarer det grunnleggende om Excel-sirkulærreferanse og hvorfor du bør passe deg for å bruke dem. Du vil også lære hvordan du sjekker, finner og fjerner sirkulære referanser i Excel-regneark, og hvis ingen av de ovennevnte er et alternativ, hvordan du aktiverer og bruker sirkulære formler.
Du har prøvd å skrive inn en formel i Excel-arket ditt, men av en eller annen grunn fungerer det ikke. I stedet forteller den deg noe om en sirkulær referanse . Er det slik du havnet på denne siden? :)
Tusenvis av brukere står overfor det samme problemet på daglig basis ganske enkelt fordi de tvinger en Excel-formel til å beregne sin egen celle. Når du prøver å gjøre dette, viser Excel følgende feilmelding:
"Forsiktig, vi fant en eller flere sirkulære referanser i arbeidsboken din som kan føre til at formelen din beregnes feil."
For å si det enkelt, det Excel prøver å si er dette: "Hei, jeg kan bli sittende fast i rundkjøringen. Er du sikker på at du vil at jeg skal fortsette likevel?"
Som du kan forstå, er sirkulære referanser i Excel plagsomme, og sunn fornuft sier at du bør unngå dem når det er mulig. Det kan imidlertid være noen sjeldne tilfeller når en Excel-sirkulærreferanse er den eneste mulige løsningen for oppgaven du står overfor.
Hva er en rundskriv i Excel?
Her er en veldig rett og kortfattet definisjon av en sirkulær referanse levert av Microsoft:
" Når en Excel-formel refererer tilbake til sin egen celle, enten direkte eller indirekte, oppretter den en sirkulær referanse. "
For eksempel, hvis hvis du velger celle A1 og skriver =A1
i den, vil dette opprette en Excel-sirkulær referanse. Å angi en annen formel eller beregning som refererer til A1 vil ha samme effekt, f.eks. =A1*5
eller =IF(A1=1, "OK")
.
Så snart du trykker Enter for å fullføre en slik formel, får du følgende advarsel:
Hvorfor fungerer Microsoft Excel gi deg en heads-up? Fordi sirkulære referanser i Excel kan iterere i det uendelige og skape en endeløs sløyfe, og dermed redusere arbeidsbokberegningene betydelig.
Når du har fått advarselen ovenfor, kan du klikke Hjelp for mer informasjon, eller lukke meldingsvinduet ved å klikke enten OK eller kryssknappen. Når du lukker meldingsvinduet, viser Excel enten en null (0) eller den sist beregnede verdien i cellen. Jepp, i noen tilfeller kan en formel med en sirkulær referanse fullføres før den prøver å beregne seg selv, og når det skjer, returnerer Microsoft Excel verdien fra den siste vellykkede beregningen.
Merk. I mange tilfeller, når du skriver inn mer enn én formel med en sirkulær referanse, viser ikke Excel advarselsmeldingen gjentatte ganger.
Men hvorfor skulle noen ønske å lage en så dum formel som ikke gjør annet enn å forårsakeunødvendige problemer? Ja, ingen fornuftig bruker vil med vilje skrive inn en sirkulær formel som den ovenfor. Du kan imidlertid lage en sirkulær referanse i Excel-arket ditt ved et uhell, og her er et veldig vanlig scenario.
Forutsatt at du vil legge sammen verdier i kolonne A med en vanlig SUM-formel, og når du gjør dette tar du ved et uhell. selve den totale cellen (B6 i dette eksemplet).
Hvis sirkulære referanser ikke er tillatt i Excel (og de er slått av som standard), vil du se en feilmelding som vi diskuterte for et øyeblikk siden. Hvis iterative beregninger er slått på, vil den sirkulære formelen din returnere 0 som i følgende skjermbilde:
I noen tilfeller kan en eller flere blå piler også vises i regnearket ditt plutselig, så du tror kanskje at Excel har blitt gal og er i ferd med å krasje.
Faktisk er disse pilene ikke noe mer enn Trace Precedents eller Trace Dependents , som indikerer hvilke celler som påvirker eller påvirkes av den aktive cellen. Vi vil diskutere hvordan du kan vise og skjule disse pilene litt senere.
Nå kan du ha et inntrykk av at Excel sirkulære referanser er en verdiløs og farlig ting, og lurer kanskje på hvorfor Excel ikke har forbudt dem helt . Som allerede nevnt, er det noen svært sjeldne tilfeller når bruk av en sirkulærreferanse i Excel kan rettferdiggjøres fordi den gir enkortere og mer elegant løsning, om ikke den eneste mulige. Følgende eksempel demonstrerer en slik formel.
Bruk av en Excel-sirkulær referanse - formeleksempel
I en av våre tidligere opplæringsprogrammer diskuterte vi hvordan du setter inn dagens dato i Excel. Og et overveldende flertall av spørsmålene som ble lagt ut i kommentarer handlet om hvordan du skriver inn et tidsstempel i Excel uten at det endres hver gang regnearket åpnes på nytt eller beregnes på nytt. Jeg var veldig nølende med å svare på disse kommentarene fordi den eneste løsningen jeg kjenner innebærer sirkulære referanser, og de bør behandles med forsiktighet. Uansett, her er et veldig vanlig scenario...
Forutsatt at du har en liste over varer i kolonne A, og du skriver inn leveringsstatusen i kolonne B. Så snart du skriver " Ja " i kolonne B, vil du at gjeldende dato og klokkeslett automatisk skal settes inn i samme rad i kolonne C som et statisk uforanderlig tidsstempel .
Ved å bruke en triviell NOW()-formel er ikke et alternativ fordi denne Excel-funksjonen er flyktig, noe som betyr at den oppdaterer verdien hver gang regnearkene åpnes på nytt eller beregnes på nytt. En mulig løsning er å bruke nestede IF-funksjoner med en sirkulær referanse i den andre IF:
=IF(B2="yes", IF(C2="" ,NOW(), C2), "")
Hvor B2 er leveringsstatusen, og C2 er cellen der du vil at et tidsstempel skal vises.
I formelen ovenfor sjekker den første HVIS-funksjonen celle B2 for " Ja " (eller en hvilken som helstannen tekst du oppgir til formelen), og hvis den angitte teksten er der, kjører den den andre HVIS, ellers returnerer den en tom streng. Og den andre HVIS-funksjonen er en sirkulær formel som henter gjeldende dag og klokkeslett hvis C2 ikke allerede har en verdi i seg, og dermed lagrer alle eksisterende tidsstempler.
Merk. For at denne sirkulære formelen i Excel skal fungere, bør du tillate iterative beregninger i regnearket ditt, og det er akkurat dette vi skal diskutere videre.
Hvordan aktivere/deaktivere sirkulære referanser i Excel
Som nevnt tidligere er iterative beregninger vanligvis slått av i Excel som standard (i denne sammenhengen er iterasjon den gjentatte omberegningen til en spesifikk numerisk betingelse er oppfylt). For at sirkulære formler skal fungere, må du aktivere iterative beregninger i Excel-arbeidsboken.
I Excel 2019 , Excel 2016 , Excel 2013 , og Excel 2010 , klikk Fil > Alternativer , gå til Formler , og velg avmerkingsboksen Aktiver iterativ beregning under delen Beregningsalternativer .
I Excel 2007 klikker du Office. knapp > Excel-alternativer > Formler > Iterasjonsområde .
I Excel 2003 og tidligere er Alternativet Iterativ beregning ligger under kategorien Meny > Verktøy > Alternativer > Beregning .
Når du slår på iterativberegninger, må du spesifisere følgende to alternativer:
- Maksimal gjentakelse -boks - angir hvor mange ganger formelen skal beregnes på nytt. Jo høyere antall iterasjoner, jo lengre tid tar beregningen.
- Maksimal endring -boks - angir maksimal endring mellom beregningsresultater. Jo mindre tall, jo mer nøyaktig resultat får du og jo mer tid tar Excel å beregne regnearket.
Standardinnstillingene er 100 for Maksimal gjentakelse og 0,001 for Maksimal endring . Det betyr at Microsoft Excel vil slutte å beregne den sirkulære formelen din etter 100 iterasjoner eller etter en endring på mindre enn 0,001 mellom iterasjonene, avhengig av hva som kommer først.
Hvorfor bør du unngå å bruke sirkulære referanser i Excel
Som du allerede vet, er bruk av sirkulære referanser i Excel en glatt og ikke anbefalt tilnærming. Bortsett fra ytelsesproblemer og en advarsel som vises ved hver åpning av en arbeidsbok (med mindre iterative beregninger er på), kan sirkulære referanser føre til en rekke andre problemer som ikke er umiddelbart synlige.
For eksempel, hvis du velger en celle med en sirkulær referanse, og deretter ved et uhell bytter til formelredigeringsmodus (enten ved å trykke F2 eller dobbeltklikke på cellen), og deretter trykker du Enter uten å gjøre noen endringer i formelen, vil den returnere null.
Så, her er enråd fra mange respekterte Excel-guruer - prøv å unngå sirkulære referanser i arkene dine når det er mulig.
Hvordan finne sirkulære referanser i Excel
For å sjekke Excel-arbeidsboken for sirkulære referanser, utfør følgende trinn:
- Gå til kategorien Formler , klikk på pilen ved siden av Feilkontroll og pek på Sirkulære referanser . sist angitte sirkulære referanse vises der.
- Klikk på cellen oppført under Sirkulære referanser , og Excel vil bringe deg nøyaktig til den cellen.
Så snart du gjør dette, vil statuslinjen varsle deg om at det finnes sirkulære referanser i arbeidsboken din og viser adressen til en av disse cellene:
Hvis det finnes sirkulære referanser i andre ark, viser statuslinjen bare " Sirkulære referanser " uten celleadresse.
Merk. Denne funksjonen er deaktivert når alternativet Iterativ beregning er slått på, så du må slå det av før du begynner å sjekke arbeidsboken for sirkulære referanser.
Hvordan fjerne sirkulære referanser i Excel
Dessverre , er det ingen mekanisme i Excel som lar deg eliminere alle sirkulære formler i en arbeidsbok med et knappeklikk. For å bli kvitt dem, må du inspisere hver sirkulær referanse individuelt ved å utføre trinnene ovenfor, og deretter enten fjerne en gitt sirkulær formel helt ellererstatte den med en eller flere enkle formler.
Hvordan spore relasjoner mellom formler og celler
I tilfeller hvor en Excel-sirkulærreferanse ikke er åpenbar, vil Sporpresedenser og Trace Dependents -funksjoner kan gi deg en pekepinn ved å tegne en eller flere linjer som viser hvilke celler som påvirker eller påvirkes av den valgte cellen.
For å vise sporingspilene, gå til Formler -kategorien > Formelrevisjon -gruppen, og klikk på ett av alternativene:
Spor presedenser - sporer celler som gir data til en formel, dvs. tegner linjer som indikerer hvilke celler som påvirker den valgte cellen.
Sporavhengige - sporer celler som er avhengige av den aktive cellen, dvs. tegner linjer som indikerer hvilke celler som er påvirket av den valgte cellen. Med andre ord viser den hvilke celler som inneholder formler som refererer til den valgte cellen.
Alternativt kan du bruke følgende snarveier:
- Spor presedenser: Alt+T U T
- Spor avhengige: Alt+T U D
For å skjule pilene, klikk Fjern piler -knappen som ligger rett under Spor avhengige .
I eksemplet ovenfor viser Trace Precedents -pilen hvilke celler som direkte leverer data til B6. Som du kan se, er celle B6 også inkludert, noe som gjør den til en sirkulær referanse og får formelen til å returnere null. Selvfølgelig er denne lett å fikse, bare bytt ut B6med B5 i SUMs argument: =SUM(B2:B5)
Andre sirkulære referanser er kanskje ikke så opplagte og krever mer ettertanke og beregninger.
Dette er hvordan du håndterer Excel-sirkulære referanser. Forhåpentligvis har denne korte opplæringen kastet litt lys over denne "blinde flekken", og nå kan du forske videre for å lære mer. Jeg takker for at du leser og ser frem til å se deg på bloggen vår neste uke!