Bruke OFFSET for å referere til hyperblokker

Dette emnet beskriver OFFSET-funksjonen. Den refererer til eksempelrapport RP006 i Eksempler-applikasjonen.

OFFSET-funksjonen er ikke spesifikk for Application Studio men er spesielt nytt når du arbeider med hyperblokker. Dette er fordi hyperblokker er dynamiske i visningsmodus. I designmodus er hyperblokker statiske. Det vil se, de opptar et spesifisert område med celler. Men i visningsmodus utvider og trekker hyperblokker seg sammen, med innhold, noe som gjør spesifikke cellereferanser meningsløse. Med andre ord; hvis du, for eksempel, har en formel utenfor en hyperblokk som må referere til celler inne i hyperblokken må du ha en dynamisk formel.

Med OFFSET identifiserer du celler ved å spesifisere deres posisjon relativt til en innledende referansecelle. Du spesifiserer deres posisjon med koordinater som representerer avstand i antall rader og kolonner fra den innledende referansecellen.

Dette eksemplet refererer til celle C13:

=OFFSET(F11,2,-3)

Det vil si at celle F11 er den innledende referansecellen. Det andre argumentet, 2, indikerer at den refererte cellen er to rader under F11. Det tredje argumentet, 3, indikerer at den refererte cellen er 3 kolonner til venstre for F11.

Dette eksemplet refererer også til celle C13:

=OFFSET(B21,-8,1)

Det vil si at celle B21 er den innledende referansecellen. Det andre argumentet, -8, indikerer at den refererte cellen er 8 rader over B21. Det tredje argumentet, 1, indikerer at den refererte cellen er 1 kolonner til høyre for B21.

En vanlig bruk av OFFSET i Application Studio er å beregne kumulative verdier som brukes i, for eksempel, ABC-analyse eller Pareto-diagrammer. For å beregne en kumulativ verdi legger du til verdien til den gjeldende cellen til verdien av cellen over. Ben i det dynamiske miljøet til en hyperblokk kan celler over ikke spesifiseres med en statisk cellereferanse.

Rapport RP006 har et eksempel på hvordan du bruker OFFSET for å beregne kumulative verdier.

Rapport RP006 har en hyperblokk som er opprettet fra produktdimensjonen i analysekuben til Eksempler-applikasjonen.

Hyperblokken har to verdiceller. I den første verdicellen viser en ROC-formel en verdi for hver gruppe med produkter. I den andre verdicellen befinner en OFFSET-formel seg.

I visningsmodus dupliserer cellen verdien i den første verdicellen. Dette er fordi OFFSET-formelen er feil.

Formelen i celle E5 er:

=OFFSET(E5,0,0)+D5

For å endre OFFSET-formelen slik at den viser kumulative verdier:

  1. Klikk på celle E5 i designmodus.
  2. I formelredigeringsverktøyet endrer du det andre argumentet i OFFSET-formelen fra 0 til -1. Det vil si, endre formelen til: =OFFSET(E5,-1,0)+D5. Her angir -1 'raden over'.

    I visningsmodus vises kumulative verdier og etiketten Kumulativ. Dette oppnås også ved å bruke en OFFSET-funksjon i celle E3 – nestet i et IF-uttrykk.

    IF-uttrykket er: =IF(OFFSET(E3,3,0)=OFFSET(E3,3,-1),"","Cumulative")

    Vi vet at verdiene i den første raden av resultatet alltid vil være lik. Men hvis kumulative verdier vises, vil verdiene i alle andre rader ikke være like. Dermed tester det første IF-uttrykket om verdiene i rad 2 er like.

    IF-uttrykket oversettes til: Hvis verdien i cellen som er 3 rader under E3 er lik verdien i cellen som er 3 rader under og en til venstre for E3, vises ingenting (""). Ellers vises "Kumulativ".