Als de draaitabel meerdere horizontale dimensies heeft, omvat het huidige rijsegment alleen kolommen met dezelfde waarden als de huidige kolom in alle dimensierijen, met uitzondering van de rij waarin de laatste horizontale dimensie wordt weergegeven in de onderlinge sorteervolgorde van de velden. De sorteervolgorde tussen velden voor horizontale dimensies in draaitabellen wordt simpelweg gedefinieerd door de volgorde van de dimensies van boven naar onderzijn.
InformatieHet is niet toegestaan te sorteren op y-waarden in grafieken of op uitdrukkingskolommen in tabellen als deze diagramfunctie wordt gebruikt in een van de uitdrukkingen van de grafiek. Deze sorteeropties worden daarom automatisch uitgeschakeld. Als u deze diagramfunctie gebruikt in een visualisatie of tabel, wordt de sortering van de visualisatie teruggezet naar de gesorteerde invoer van deze functie.
Wanneer de ColumnNo gelijk is aan 1, zal het diagram null retourneren. Anders wordt het resultaat van Sum(Sales) / Before(Sum(Sales) geretourneerd. In dit voorbeeld retourneert het diagram waarden vanaf kolom 2, terwijl kolom 1 nul retourneert.
Voorbeeld - Basisprincipes voor ColumnNo
Overzicht
Een gegevensverzameling bevat verkoopgegevens per kwartaal. Dit voorbeeld vermenigvuldigt de verkoopwaarde voor elke periode met het kolomnummer van de periode.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensverzameling die wordt geladen in een tabel met de naam Example.
Laad de gegevens en open een werkblad. Maak een nieuwe draaitabel en voeg dit veld toe als een kolomdimensie:
Period
Maak de volgende meting:
=Sum(Sales) * ColumnNo(), om de som van de verkoopwaarden te berekenen, vermenigvuldigd met het kolomnummer, dat in dit voorbeeld het kwartaal is.
Resultatentabel
Q1
Q2
Q3
Q4
1000
4000
9000
16000
De som van de verkoopwaarde voor elk kwartaal wordt vermenigvuldigd met de uitvoer van de functie ColumnNo. De waarde van de verkoop in Q4 is bijvoorbeeld 4000 en de uitvoer van de functie ColumnNo retourneert 4 omdat Q4 de vierde kolom is. Daarom vermenigvuldigt de metinguitdrukking 4000 met 4 en retourneert 16000.
Voorbeeld 5 – Scenario met ColumnNo
Overzicht
Een gegevensverzameling bevat verkoopcijfers van elk kwartaal. Een bedrijf wil de verkoopgegevens voor Q1 en Q3 (de kolommen met oneven nummers) met 5% verhogen en de verkoop voor de overige kolommen (Q2 en Q4) met 10% verhogen.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensverzameling die wordt geladen in een tabel met de naam Example.
Laad de gegevens en open een werkblad. Maak een nieuwe draaitabel en voeg dit veld toe als een kolomdimensie:
Period
Maak de volgende metingen:
=Sum(Sales), om de som van verkoop te berekenen.
=If(Odd(ColumnNo()), Amount * 1.05, Amount * 1.10), om de verkoopbedragen voor de kolommen met oneven nummers met 5% te verhogen en de overige kolommen met 10%.
Resultatentabel
Q1
Q2
Q3
Q4
Sum(Sales)
If(Odd(ColumnNo()), Amount * 1.05, Amount * 1.10)
Sum(Sales)
If(Odd(ColumnNo()), Amount * 1.05, Amount * 1.10)
Sum(Sales)
If(Odd(ColumnNo()), Amount * 1.05, Amount * 1.10)
Sum(Sales)
If(Odd(ColumnNo()), Amount * 1.05, Amount * 1.10)
1000
1050
2000
2200
3000
3150
4000
4400
De resultaten laten zien dat de verkoopwaarden voor de oneven genummerde kolommen, 1 en 3 (Q1 en Q3), met 5% zijn gestegen, terwijl de overige even genummerde kolommen, 2 en 4 (Q2 en Q4), met 10% zijn gestegen.
Voorbeeld 5 – Geavanceerd scenario met ColumnNo
Overzicht
Dit voorbeeld gebruikt dezelfde gegevensverzameling als het vorige scenario om het cumulatieve totaal voor de waarden in elke periode weer te geven.
Open de editor voor laden van gegevens en voeg het onderstaande load-script toe aan een nieuw tabblad.
Het load-script bevat:
Een gegevensverzameling die wordt geladen in een tabel met de naam Example.
Laad de gegevens en open een werkblad. Maak een nieuwe draaitabel en voeg dit veld toe als een kolomdimensie:
Period
Maak de volgende meting:
=RangeSum(Before(Sum(Sales), 0, ColumnNo())), om het cumulatieve totaal te berekenen.
Resultatentabel
Q1
Q2
Q3
Q4
1000
3000
6000
10000
Dit voorbeeld toont hoe u de functie ColumnNo kunt gebruiken om een lopend totaal te genereren. De volgende uitleg geeft meer details over de metinguitdrukking: RangeSum(Before(Sum(Sales), 0, ColumnNo())).
Sum(Sales): berekent de som van de verkopen voor de huidige cel in de draaitabel.
Before(Sum(Sales), 0, ColumnNo()): de functie Before haalt waarden op uit de voorgaande kolommen in de draaitabel.
Het argument Sum(Sales) zorgt ervoor dat de functie de getotaliseerde Sales voor de voorgaande cellen ophaalt.
De offsetwaarde van 0 specificeert de offset voor de kolom (die overblijft in het huidige rijsegment van de huidige kolom).
ColumnNo() bepaalt hoeveel kolommen terug moeten gaan bij het ophalen van de gegevens. Het geeft dynamisch de positie van de huidige kolom weer (bijvoorbeeld, voor kolom 3 is ColumnNo() gelijk aan 3, dus de functie kijkt terug over drie kolommen).
RangeSum(): de functie RangeSum berekent de som van het bereik van de opgegeven waarden. Het behandelt nullwaarden door ze als nul te behandelen. In deze uitdrukking genereert RangeSum effectief een cumulatief totaal door alle voorgaande Sales waarden die zijn opgehaald door de functie Before() bij elkaar op te tellen, evenals de verkoop van de huidige cel.
Was deze pagina nuttig?
Als u problemen ervaart op deze pagina of de inhoud onjuist is – een typfout, een ontbrekende stap of een technische fout – laat het ons weten zodat we dit kunnen verbeteren!