Den implisitte skjæringspunktoperatøren ble introdusert som en del av en betydelig oppgradering i Excels formelspråk for å støtte dynamiske matriser. Dynamiske matriser bringer betydelig ny beregningsmulighet og funksjonalitet til Excel.
Oppgradert formelspråk
Excels oppgraderte formelspråk er nesten identisk med det gamle språket, bortsett fra at det bruker @-operatøren for å indikere hvor det implisitte skjæringspunktet kan oppstå, mens det gamle språket gjorde dette stille. Derfor kan du legge merke til @'s appear in some formulas when opened in dynamic array Excel. It'at det er viktig å være oppmerksom på at formlene vil fortsette å beregne på samme måte som de alltid har gjort.
Hva er implisitt skjæringspunkt?
Implisitt skjæringspunktlogikk reduserer mange verdier til en enkeltverdi. Excel gjorde dette for å tvinge en formel til å returnere en enkeltverdi, siden en celle bare kunne inneholde en enkeltverdi. Hvis formelen returnerte en enkeltverdi, gjorde implisitt skjæringspunkt ingenting (selv om den teknisk sett ble gjort i bakgrunnen). Logikken fungerer slik:
- Hvis verdien er et enkelt element, returnerer du elementet.
- Hvis verdien er et område, returnerer du verdien fra cellen på samme rad eller kolonne som formelen.
- Hvis verdien er en matrise, velger du verdien øverst til venstre.
Med de kommende dynamiske matrisene er ikke Excel lenger begrenset til å returnere enkeltverdier fra formler, så stille implisitt skjæringspunkt er ikke lenger nødvendig. Der en gammel formel kunne utløse implisitt skjæringspunkt uten å være synlig, viser dynamisk matrise-aktivert Excel hvor det kunne ha oppstått med @.
Hvorfor @-symbolet?
@-symbolet brukes allerede i tabellreferanser for å indikere implisitt skjæringspunkt. Vurder følgende formel i en tabell =[@Column1]. Her indikerer @ at formelen skal bruke implisitt skjæringspunkt for å hente verdien på samme rad som [Column1].
Kan du fjerne @?
Ofte kan du det. Det avhenger av hva delen av formelen til høyre for @ returnerer:
- Hvis den returnerer en enkeltverdi (det vanligste tilfellet), er det ingen endring hvis @ fjernes.
- Hvis det returnerer et område eller en matrise, vil fjerning av @føre til at den flyter over til de nærliggende cellene.
Hvis du fjerner en automatisk lagt til @ og senere åpner arbeidsboken i en eldre versjon av Excel, vises den som en eldre matriseformel (brutt med klammeparenteser ), dette gjøres {}for å sikre at den eldre versjonen ikke utløser implisitt skjæringspunkt.
Når legger vi til @ i gamle formler?
Generelt sett får funksjoner som returnerer områder med flere celler eller matriser, prefikset @ hvis de ble opprettet i en eldre versjon av Excel. Det er viktig å være oppmerksom på at det ikke er noen endring i måten formelen oppfører seg på. Du kan bare se det tidligere usynlige implisitte skjæringspunktet nå. Vanlige funksjoner som kan returnere områder med flere celler, inkluderer INDEKS, FORSKYVNING og Brukerdefinerte funksjoner (UDF-er). Et vanlig unntak er hvis de er omsluttet av en funksjon som godtar en matrise eller et område (f. eks. SUMMER() eller GJENNOMSNITT()).
Se Excel-funksjoner som returnerer områder eller matriser for mer informasjon.
Eksempler
| Opprinnelig formel | Som vist i dynamisk matrise Excel | Forklaring |
|---|---|---|
| =SUMMER(A1:A10) | =SUMMER(A1:A10) | Ingen endring – Ingen implisitte skjæringspunkter kan oppstå, fordi SUMME-funksjonen forventer områder eller matriser. |
| =A1+A2 | =A1+A2 | Ingen endring – Ingen implisitte skjæringspunkter kan oppstå. |
| =A1:A10 | =@A1:A10 | Implisitt skjæringspunkt vil oppstå, og Excel returnerer verdien knyttet til raden formelen er i. |
| =INDEKS(A1:A10,B1) | =@INDEKS(A1:A10,B1) | Ingen implisitte skjæringspunkter kan oppstå. The INDEKS-funksjonen kan returnere en matrise eller et område når andre eller tredje argument er 0. |
| =FORSKYVNING(A1:A2,1,1) | =@FORSKYVNING(A1:A2,1,1) | Ingen implisitte skjæringspunkter kan oppstå. FORSKYVNING-funksjonen kan returnere et celleområde med flere celler. Når den gjør det, blir implisitt skjæringspunkt utløst. |
| =MYUDF() | =@MYUDF() | Ingen implisitte skjæringspunkter kan oppstå. Brukerdefinerte funksjoner kan returnere matriser. Når de gjør det, ville den opprinnelige formelen ha utløst implisitt skjæringspunkt. |
Bruke @-operatøren i nye formler
Hvis du oppretter eller redigerer en formel i dynamisk matrise Excel som inneholder @-operatøren, kan det hende den vises som _xlfn.SINGLE() i forhåndsdynamisk matrise Excel.
Dette skjer når du aktiverer en blandet formel. En blandet formel er en formel som avhenger av både matriseberegning og implisitt skjæringspunkt. Dette ble ikke støttet av forhåndsdynamisk matrise Excel. Forhåndsdynamisk matrise støttet bare formler som utførte beregning av i) implisitt skjæringspunkt eller ii) matrise gjennom hele.
Når dynamisk matrise-aktivert Excel oppdager opprettingen av en “blandet formel”, foreslås en variant av formelen som implisitt skjæringspunkt gjennom hele. Hvis du for eksempel skriver inn =A1:A10+@A1:A10,, ser du følgende dialogboks:
Hvis du velger å forkaste formelen som er foreslått av dialogboksen, vil den blandede formelen =A1:A10+@A1:A10 bli utført. Hvis du senere åpner denne formelen i forhånds dynamisk matrise Excel, vises den som =A1:A10+_xlfn.SINGLE(A1:A10) med @'s i den blandede formelen som vises som _xlfn.SINGLE(). Når denne formelen evalueres av forhånds dynamisk matrise Excel, vil den returnere en #NAME! som feilverdi.
Trenger du mer hjelp?
Du kan alltid spørre en ekspert i det tekniske Excel-fellesskapet eller få støtte i Fellesskap.