OPPSLAG

Gjelder for:Beregnet kolonneBeregnet tabellMåleVisuell beregning

Returnerer verdien eller evaluerer uttrykket fra den visuelle matrisen ved hjelp av absolutt navigasjon. Filtre kan angis for alle akser i den visuelle matrisen. Eventuelle utelatte filtre utledes fra konteksten. Hvis ingen enkeltverdi kan fastslås, returneres en feil.

Syntaks

LOOKUP(<expression>, <colref>, <expression>[, <colref>, <expression>]...[, <AssociatedColumnsBehavior>])

Parametere

Begrep Definisjon
expression Uttrykket som skal evalueres.
colref (Valgfritt) Kolonnen som skal filtreres.
expression (Valgfritt) Verdien som skal filtreres.
AssociatedColumnsBehavior (Valgfritt) Angir hvordan tilknyttede kolonner håndteres. Tillatte verdier er EXPLICIT (standard) eller INFERRED.

Returverdi

Verdien for uttrykket etter at filtre er brukt.

Hvis det ikke finnes et treff, returneres en feil.

Hvis flere rader samsvarer med filtrene, returneres en feil.

Merknader

Parameteren AssociatedColumnsBehavior kontrollerer hvordan LOOKUP håndterer aksekolonner som bestemmes funksjonelt av de angitte koordinatene:

  • EKSPLISITT (standard): Når parameteren utelates eller settes til EXPLICIT, bruker LOOKUP bare filtrene du eksplisitt angir. Aksekolonner som ikke er angitt, utledes fra gjeldende kontekst. Dette er den opprinnelige virkemåten for OPPSLAG.

  • UTSATT: Når den er satt til INFERRED, identifiserer motoren hvilke aksekolonner som bestemmes funksjonelt av de angitte koordinatene, og fyller dem inn automatisk før du evaluerer oppslaget. Hvis du for eksempel filtrerer etter år, kvartal og måned, kan motoren utlede relaterte kolonner, for eksempel dagen eller uken som tilsvarer disse koordinatene.

Når INFERRED er angitt og du angir en verdi for en kolonne som ville blitt utsatt, valideres den angitte verdien mot den utsatte verdien. Hvis de er i konflikt, returneres BLANKanropet på samme måte som når EXPLICITBLANK du leverer motstridende koordinater.

Eksempel 1

I dette eksemplet henter LOOKUP summen av salg for sykkelkategorien. Det første argumentet kan være en kolonne eller et skalaruttrykk.

Lookup Example 1 = LOOKUP(SUM([Sales Amount]),  [Category], "Bikes")
Lookup Example 2 = LOOKUP([Sales Amount], [Category], "Bikes")

Skjermbildet nedenfor viser matrisen med to visuelle beregninger.

oppslagseksempel 1

Eksempel 2

I dette eksemplet henter lookupExample2-visualobjektberegningen summen av salg for regnskapsåret FY2018. Legg merke til at kvartalsfilter fra raden vil bli brukt siden det ikke er angitt eksplisitt, noe som resulterer i at ingen resultater returneres for FY2019 Q1 til FY2019 Q4 siden kombinasjonen av FY2018 og FY2019 Q1 til FY2019 Q4 ikke eksisterer. LookupExample3 angir eksplisitt kvartalet slik at det ikke tar hensyn til gjeldende kvartal på raden.

LookupExample2 = LOOKUP([Sales Amount], [Fiscal Year], "FY2018")
LookupExample3 = LOOKUP([Sales Amount], [Fiscal Year], "FY2018", [Fiscal Quarter], "FY2018 Q1")

oppslagseksempel 2

Eksempel 3

Dette eksemplet viser forskjellen mellom EXPLICIT og INFERRED virkemåte. Begge visuelle beregninger slår opp salgssummen for januar 2025 ved å angi koordinatene År, Kvartal og Månedsnavn.

Jan 2025 Sales (Explicit) = LOOKUP([Sum of Sales], [Year], 2025, [Quarter], "Q1", [Month Name], "January", EXPLICIT)
Jan 2025 Sales (Inferred) = LOOKUP([Sum of Sales], [Year], 2025, [Quarter], "Q1", [Month Name], "January", INFERRED)

Med returnerer oppslaget bare en verdi på raden der gjeldende kontekst samsvarer med EXPLICITde angitte koordinatene (raden januar 2025). På alle andre rader returnerer BLANK oppslaget fordi den gjeldende radens kontekst er i konflikt med de angitte filtrene.

Med INFERREDidentifiserer motoren automatisk tilknyttede kolonner som bestemmes funksjonelt av koordinatene År, Kvartal og Månedsnavn. Fordi disse koordinatene unikt identifiserer et tidspunkt, returnerer oppslaget verdien på tvers av alle rader i matrisen.

oppslagseksempel 3 som viser eksplisitt kontra utsatt virkemåte