Microsoft introduserte implisitt skjæringspunktoperator som en del av en betydelig oppgradering av 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. Som et resultat legger du kanskje merke til at @ vises i noen formler når du åpner dem i dynamisk matrise Excel. Formlene fortsetter å 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 enkelt verdi, 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]. @ indikerer at formelen bruker implisitt skjæringspunkt til å 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 når du fjerner @.
- Hvis den returnerer et område eller matrise, flyter fjerning av @ over til nærliggende celler.
Hvis du fjerner en @ som er lagt til automatisk, og senere åpner arbeidsboken i en eldre versjon av Excel, vises den som en eldre matriseformel (omsluttet av klammeparenteser {}). Denne virkemåten sikrer at den eldre versjonen ikke utløser implisitt skjæringspunkt.
Når legger vi til @ i gamle formler?
Generelt sett har funksjoner som returnerer områder med flere celler eller matriser, et @-prefiks hvis du opprettet dem i en eldre versjon av Excel. Det er ingen endring i måten formelen oppfører seg på. Du kan bare se det tidligere usynlige implisitte skjæringspunktet nå. Vanlige funksjoner som returnerer 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 (for eksempel 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 SUMMER-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 oppstår, 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, utløser det implisitt skjæringspunkt. |
| =MYUDF() | =@MYUDF() | Ingen implisitte skjæringspunkter kan oppstå. Opprett egendefinerte funksjoner i Excel kan returnere matriser. Når de gjør det, utløser den opprinnelige formelen 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 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. Forhåndsdynamisk matrise Excel støtter ikke denne kombinasjonen. Forhåndsdynamisk matrise Excel støtter bare formler som gjør i) implisitt skjæringspunkt eller ii) matriseberegning gjennom hele.
Når dynamisk matrise-aktivert Excel oppdager opprettingen av en blandet formel, foreslår den en variant av formelen som bruker implisitt skjæringspunkt gjennom hele. Hvis du for eksempel skriver inn, =A1:A10+@A1:A10, ser du følgende dialogboks:
Hvis du velger å avvise formelen som ble foreslått av dialogboksen, blir den blandede formelen =A1:A10+@A1:A10 innført. Hvis du senere åpner denne formelen i forhåndsdynamisk matrise Excel, vises den som =A1:A10+_xlfn.SINGLE(A1:A10) med @-operatorene i den blandede formelen, og vises som _xlfn.SINGLE(). Når forhåndsdynamisk matrise Excel evaluerer denne formelen, returneres en #NAME! som feilverdi.
Trenger du mer hjelp?
Du kan alltid spørre en ekspert i Excels tekniske fellesskap eller få støtte i fellesskap.