# Above - función de gráfico

Above() evalúa una expresión en una fila por encima de la fila actual dentro de un segmento de columna de una tabla. La fila para la que se calcula depende del valor de offset, si está presente, el valor predeterminado es la fila inmediatamente superior. Para los gráficos que no sean tablas, Above() evalúa la fila sobre la columna actual en el equivalente de tabla simple del gráfico.

Sintaxis:

Above([TOTAL] expr [ , offset [,count]])

Tipo de datos que devuelve: dual

Argumentos

| Argumento | Descripción |
| --- | --- |
| expr | La expresión o el campo que contiene los datos que se han de medir. |
| offset | Especificando un offset n, mayor que 0, se desplaza la evaluación de la expresión n filas más arriba de la fila actual.<br><br>Especificar un offset de 0 evaluará la expresión en la fila actual.<br><br>Especificar un número de desplazamiento (offset) negativo hace que la función Above opere como la función Below con el correspondiente número de offset positivo. |
| count | Especificando un tercer argumento count mayor que 1, la función devolverá un rango de valores count, uno por cada fila de la tabla count contando hacia arriba desde la celda original.<br><br>De esta manera, la función puede utilizarse como argumento en cualquiera de las funciones de rango especiales. [Funciones de rango](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RangeFunctions/RangeFunctionsInCharts.htm) |
| TOTAL | Si la tabla es unidimensional o si el cualificador TOTAL se utiliza como argumento, el segmento de columna actual es siempre igual a la columna completa.<br><br>[Definir el ámbito de agregación](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/define-aggregation-scope.htm) |

En la primera fila de un segmento de columna, se devuelve un valor NULL, ya que no hay ninguna fila encima de él.

Nota informativaUn segmento de columna se define como un subconjunto consecutivo de celdas que tienen los mismos valores para las dimensiones de la ordenación actual. Las funciones inter-registro se calculan en el segmento de columna excluida la dimensión más a la derecha del gráfico de tabla simple equivalente. Si solo hay una dimensión en el gráfico, o si se especifica el cualificador TOTAL, la expresión se evalúa en la tabla completa.

Nota informativaSi la tabla o el equivalente de tabla tiene múltiples dimensiones verticales, el segmento de columna actual incluirá solo filas con los mismos valores que la fila actual en todas las columnas de dimensión, excepto para la columna que muestra la última dimensión en el orden de campos interno.

Limitaciones:

* Las llamadas recursivas devolverán NULL.

* No se permite ordenar por valores Y en gráficos ni ordenar por columnas de expresión en tablas cuando esta función de gráfico se usa en cualquiera de las expresiones del gráfico. Estas alternativas de ordenación están por lo tanto automáticamente deshabilitadas. Cuando utiliza esta función de gráfico en una visualización o tabla, el orden de la visualización volverá a la entrada ordenada de esta función.

Ejemplo: Expresiones de gráficos

| Ejemplo | Resultado |
| --- | --- |
| `Above( Sum(Sales) )` | Devuelve el valor de `Sales` para la fila situada por encima de la fila actual. |

## Ejemplo: fundamentos de Above

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que se carga en una tabla de datos denominada `Example`.

* Los siguientes campos de la tabla de datos:

  * `Year`

  * `Sales`

Script de carga

```
Example:
LOAD * INLINE [
Year, Sales
2019, 1000
2020, 1500
2021, 1200
2022, 1800
2023, 1700
];
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* `Year`

Cree las siguientes medidas:

* `=Sum(Sales)`, para hallar las ventas anuales.

* `=Above(Sum(Sales))`, para hallar el valor de las ventas del año anterior.

* `=Sum(Sales) - Above(Sum(Sales))`, para calcular la variación entre el valor `Sales` del año en curso y el valor del año anterior.

* `=RangeSum(Above(Sales, 1, 2))`, para demostrar una agregación de dos años consecutivos de los dos años anteriores de ventas.

* `=(Sales - Above(Sales)) / Above(Sales)`, para devolver el cambio en `Sales` como ratio / porcentaje. Para mostrar este valor como porcentaje, en Formato numérico, seleccione Número &gt; Formato simple &gt; 12,34%.

Tabla de resultados

| Year | Sum(Sales) | Above(Sum(Sales)) | Sum(Sales) - Above(Sum(Sales)) | RangeSum(Above(Sales, 1, 2) | (Sales - Above(Sales)) / Above(Sales) |
| --- | --- | --- | --- | --- | --- |
| Totals | 7200 | - | - | 0 | - |
| 2019 | 1000 | - | - | 0 | - |
| 2020 | 1500 | 1000 | 500 | 1000 | 50.00% |
| 2021 | 1200 | 1500 | -300 | 2500 | -20.00% |
| 2022 | 1800 | 1200 | 600 | 2700 | 50.00% |
| 2023 | 1700 | 1800 | -100 | 3000 | -5.56% |

Si observa los resultados, podrá comparar los valores de `Sales` del periodo actual con los del periodo anterior.

* La medida `Sum(Sales)- Above(Sum(Sales))` devuelve el cambio en los valores de `Sales`, comparando el periodo actual con el anterior.

* La medida `RangeSum(Above(Sales, 1, 2))` devuelve la suma de los dos valores de `Sales` anteriores.

* La medida `(Sales - Above(Sales)) / Above(Sales)` devuelve el cambio en `Sales` comparado con el periodo anterior en forma de porcentaje.

Nota de sugerenciaEsta función también puede utilizarse en gráficos distintos de tablas, por ejemplo en gráficos de barras.

Haga lo siguiente:

Cree un gráfico de barras y, a continuación, añada este campo como dimensión:

* `Year`

Cree la siguiente medida:

* `=Sum(Sales) - Above(Sum(Sales))`, para devolver la variación interanual.

Gráfico de barras que muestra los resultados de la función Above

Gráfico de barras que muestra los resultados de la función Above

Gráfico de barras que muestra los resultados de la función AboveAbove ![Gráfico de barras que muestra la variación interanual de la suma de las ventas](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-above-example.png)

El uso de la función `Above` en un gráfico de barras proporciona una comparación visual de la variación entre las ventas del periodo actual frente al periodo anterior.

## Ejemplo: uso de Above

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Un conjunto de datos que se carga en una tabla de datos denominada `Example`.

* Los siguientes campos de la tabla de datos:

  * `SalesYear`

  * `SalesAmount`

Script de carga

```
Example:
LOAD * INLINE [
SalesYear, SalesAmount
2019, 500
2020, 800
2021, 400
2022, 700
2023, 600
];
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* `SalesYear`

Cree las siguientes medidas:

* `=Sum(SalesAmount)`, para agregar las ventas.

* `=RangeSum(Above(SalesAmount, 0, RowNo()))`, para calcular un total actualizado de los valores de `SalesAmount`.

Tabla de resultados

| SalesYear | Sum(SalesAmount) | RangeSum(Above(SalesAmount, 0, RowNo())) |
| --- | --- | --- |
| Totals | 3000 | 0 |
| 2019 | 500 | 500 |
| 2020 | 800 | 1300 |
| 2021 | 400 | 1700 |
| 2022 | 700 | 2400 |
| 2023 | 600 | 3000 |

Los resultados muestran cómo puede utilizar una combinación de la función `RangeSum` y la función `Above` para crear un total acumulado.

Nota de sugerenciaEsta función también puede utilizarse en gráficos distintos de tablas, por ejemplo en gráficos de barras.

Haga lo siguiente:

Cree un gráfico de barras y, a continuación, añada este campo como dimensión:

* `SalesYear`

Cree la siguiente medida:

* `=RangeSum(Above(SalesAmount, 0, RowNo()))`, para devolver el valor acumulado de las ventas.

Gráfico de barras que muestra el valor acumulado de las ventas por año

Gráfico de barras que muestra el valor acumulado de las ventas por año

Gráfico de barras que muestra el valor acumulado de las ventas por año ![Gráfico de barras que muestra el valor acumulado de las ventas por año de venta.](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Resources/Images/scripting-functions-above-example2.png)

## Ejemplo: expresión de gráfico utilizando Above

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Dos tablas de datos llamadas `Monthnames` y `Sales2013`.

Script de carga

```
Monthnames:
LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [
MonthText, MonthNumber
Jan, 1
Feb, 2
Mar, 3
Apr, 4
May, 5
Jun, 6
Jul, 7
Aug, 8
Sep, 9
Oct, 10
Nov, 11
Dec, 12
];
Sales2013:
Crosstable (MonthText, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|');
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* `Customer`

Cree las siguientes medidas:

* `=Sum(Sales)`, para calcular la suma de las ventas.

* `=Above(Sum(Sales))`, para mostrar la suma de las ventas de la fila anterior.

* `=Sum(Sales)+Above(Sum(Sales))`, para sumar el valor de la suma de ventas con la suma de ventas de la fila de clientes situada por encima de la fila actual.

* `=Sum(Sales)+Above(Sum(Sales), 3)`, para sumar el valor de `Sum(Sales)` del `Customer` actual al valor del `Customer` que está tres filas por encima.

* `=IF(Sum(Sales)>Above(Sum(Sales)), 'Higher')`, para añadir la etiqueta "`Higher`" a los clientes cuyos resultados de `Sum(Sales)` sean superiores a los de `Sum(Sales)` del cliente de la fila anterior.

Tabla de resultados

| Customer | Sum(Sales) | Above(Sum(Sales)) | Sum(Sales)+Above(Sum(Sales)) | Sum(Sales)+Above(Sum(Sales), 3) | IF(Sum(Sales)&gt;Above(Sum(Sales)), 'Higher') |
| --- | --- | --- | --- | --- | --- |
| Totals | 2566 | - | - | - | - |
| Astrida | 587 | - | - | - | - |
| Betacab | 539 | 587 | 1126 | - | - |
| Canutility | 683 | 539 | 1222 | - | Higher |
| Divadip | 757 | 683 | 1440 | 1344 | Higher |

La medida `Above(Sum(Sales))` devuelve NULL para el cliente `Astrida`, porque no hay ninguna fila por encima. El resultado para el cliente `Betacab` muestra el valor de `Sum(Sales)` para `Astrida`. El resultado para `Canutility` muestra el valor `Sum(Sales)` de `Betacab`, y así sucesivamente.

Para la medida `Sum(Sales)+Above(Sum(Sales))`, la fila para `Betacab` devuelve el resultado de sumar los valores de `Sum(Sales)` para las filas `Betacab` + `Astrida` (`539+587`). El resultado para la fila `Canutility` muestra el resultado de sumar los valores de `Sum(Sales)` para `Canutility` + `Betacab` (`683+539`).

La medida `Sum(Sales)+Above(Sum(Sales), 3)` tiene el argumento `offset`, fijado en `3`. Toma el valor de la fila que está 3 filas por encima de la fila actual. Añade el valor de `Sum(Sales)` para el `Customer` actual al valor para el `Customer` tres filas por encima. Por ejemplo, el `Sum(Sales)` de `Divadip`, se añade al `Sum(Sales)` de `Astrida`, el cliente que está tres filas por encima de `Divadip`. Los valores devueltos para las 3 primeras filas de `Customer` son nulos porque no hay datos.

La medida `IF(Sum(Sales)>Above(Sum(Sales)), 'Higher')`, devuelve el valor `Higher` para los clientes `Canutility` y `Divadip` porque sus resultados de ventas son ambos superiores a la suma de ventas de los clientes de la fila superior, `Betacab` y `Canutility` respectivamente.

Nota de sugerenciaEsta función también puede utilizarse en gráficos distintos de tablas, por ejemplo en gráficos de barras.

Nota de sugerenciaPara otros tipos de gráficos, convierta el gráfico a la tabla simple equivalente para que pueda interpretar fácilmente con qué fila está relacionada la función.

## Ejemplo: uso de Above basado en el criterio de ordenación

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Tres tablas de datos denominadas Monthnames, Sales2013 y Product.

Script de carga

```
Monthnames:
LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [
MonthText, MonthNumber
Jan, 1
Feb, 2
Mar, 3
Apr, 4
May, 5
Jun, 6
Jul, 7
Aug, 8
Sep, 9
Oct, 10
Nov, 11
Dec, 12
];

Sales2013:
Crosstable (MonthText, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|');

Product:
LOAD * inline [
Customer|Product|OrderNumber|UnitSales|UnitPrice
Astrida|AA|1|4|16
Astrida|AA|7|10|15
Astrida|BB|4|9|9
Betacab|CC|6|5|10
Betacab|AA|5|2|20
Betacab|BB||| 25
Canutility|AA|||15
Canutility|CC| ||19
Divadip|CC|2|4|16
Divadip|DD|3|1|25
] (delimiter is '|');
```

```

                                
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:

* Customer

* Product

* Month

Cree las siguientes medidas:

* =Sum(Sales), para calcular la suma de las ventas.

* =Above(Sum(Sales)), para mostrar la suma de las ventas de la fila anterior.

Tabla de resultados

| Customer | Product | Month | Sum(Sales) | Above(Sum(Sales)) |
| --- | --- | --- | --- | --- |
| Totals | - | - | 2566 | - |
| Astrida | AA | Jan | 46 | - |
| Astrida | AA | Feb | 60 | 46 |
| Astrida | AA | Mar | 70 | 60 |
| Astrida | AA | Apr | 13 | 70 |
| Astrida | AA | May | 78 | 13 |
| Astrida | AA | Jun | 20 | 78 |
| Astrida | AA | Jul | 45 | 20 |
| Astrida | AA | Aug | 65 | 45 |
| Astrida | AA | Sep | 78 | 65 |
| Astrida | AA | Oct | 12 | 78 |
| Astrida | AA | Nov | 78 | 12 |
| Astrida | AA | Dec | 22 | 78 |
| Astrida | BB | Jan | 46 | - |
| Astrida | BB | Feb | 60 | 46 |

En el caso de los gráficos con más de una dimensión, los resultados de las expresiones que contienen las funciones Above, Below, Top y Bottom dependen del criterio de ordenación de las dimensiones de las columnas Qlik Sense. Qlik Sense evalúa las funciones basándose en los segmentos de columna que resultan de la dimensión que se ordena en último lugar. El criterio de ordenación de columna se controla en el panel de propiedades bajo Ordenación y no es necesariamente el orden en que las columnas aparecen en una tabla.

En la tabla de resultados, la última dimensión ordenada es Month, por lo que la función Above evalúa en función de los meses. Hay una serie de resultados para cada valor Product de cada mes (Jan a Dec): un segmento de columna. A esto le sigue una serie para el siguiente segmento de columna para cada Month para el siguiente Product. Habrá un segmento de columna por cada valor de Customer para cada Product.

## Ejemplo: uso de Above utilizando un criterio de ordenación diferente

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Tres tablas de datos denominadas Monthnames, Sales2013 y Product.

Script de carga

```
Monthnames:
LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [
MonthText, MonthNumber
Jan, 1
Feb, 2
Mar, 3
Apr, 4
May, 5
Jun, 6
Jul, 7
Aug, 8
Sep, 9
Oct, 10
Nov, 11
Dec, 12
];

Sales2013:
Crosstable (MonthText, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|');

Product:
LOAD * inline [
Customer|Product|OrderNumber|UnitSales|UnitPrice
Astrida|AA|1|4|16
Astrida|AA|7|10|15
Astrida|BB|4|9|9
Betacab|CC|6|5|10
Betacab|AA|5|2|20
Betacab|BB||| 25
Canutility|AA|||15
Canutility|CC| ||19
Divadip|CC|2|4|16
Divadip|DD|3|1|25
] (delimiter is '|');
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue estos campos como dimensiones:

* Customer

* Product

* Month

Cree las siguientes medidas:

* =Sum(Sales), para calcular la suma de las ventas.

* =Above(Sum(Sales)), para mostrar la suma de las ventas de la fila anterior.

Cambie el criterio de ordenación de la tabla en el panel de propiedades. Seleccione Ordenar y, a continuación, arrastre la dimensión Producto a la tercera posición en el criterio de ordenación.

Tabla de resultados

| Customer | Product | Month | Sum(Sales) | Above(Sum(Sales)) |
| --- | --- | --- | --- | --- |
| Totals | - | - | 2566 | - |
| Astrida | AA | Jan | 46 | - |
| Astrida | BB | Jan | 46 | 46 |
| Astrida | AA | Feb | 60 | - |
| Astrida | BB | Feb | 60 | 60 |
| Astrida | AA | Mar | 70 | - |
| Astrida | BB | Mar | 70 | 70 |
| Astrida | AA | Apr | 13 | - |
| Astrida | BB | Apr | 13 | 13 |
| Astrida | AA | May | 78 | - |
| Astrida | BB | May | 78 | 78 |
| Astrida | AA | Jun | 20 | - |
| Astrida | BB | Jun | 20 | 20 |
| Astrida | AA | Jul | 45 | - |
| Astrida | BB | Jul | 45 | 45 |

En la tabla de resultados, la última dimensión ordenada es Product. La función Above se evalúa para cada Product, y como solo hay dos productos, AA y BB, solo hay un resultado no nulo en cada serie. En la fila BB para el mes Jan, el valor para Above(Sum(Sales)) es 46. Para la fila AA, el valor es nulo. El valor de cada fila AA para cualquier mes siempre será nulo, puesto que no hay ningún valor de Product por encima de AA. La segunda serie se evalúa en AA y BB para el mes Feb, para el valor Customer, Astrida. Cuando se hayan evaluado todos los meses para Astrida, se repite la secuencia para el segundo cliente, Betacab y así sucesivamente.

Nota informativaLos resultados de la tabla muestran solo una lista parcial de los datos. Para ver los resultados completos, pruebe el ejemplo en una app.

## Ejemplo: uso de la función Above con RangeAvg

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/above.htm)

#### Expresión de gráfico

Vista general

La función Above se puede utilizar como entrada a las funciones de rango. Este ejemplo utiliza la función en un RangeAvg.

Abra el Editor de carga de datos y añada el script de carga inferior en una nueva sección.

El script de carga contiene:

* Tres tablas de datos denominadas Monthnames, Sales2013 y Product.

Script de carga

```
Monthnames:
LOAD *, Dual(MonthText,MonthNumber) as Month INLINE [
MonthText, MonthNumber
Jan, 1
Feb, 2
Mar, 3
Apr, 4
May, 5
Jun, 6
Jul, 7
Aug, 8
Sep, 9
Oct, 10
Nov, 11
Dec, 12
];

Sales2013:
Crosstable (MonthText, Sales) LOAD * inline [
Customer|Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec
Astrida|46|60|70|13|78|20|45|65|78|12|78|22
Betacab|65|56|22|79|12|56|45|24|32|78|55|15
Canutility|77|68|34|91|24|68|57|36|44|90|67|27
Divadip|57|36|44|90|67|27|57|68|47|90|80|94
] (delimiter is '|');

Product:
LOAD * inline [
Customer|Product|OrderNumber|UnitSales|UnitPrice
Astrida|AA|1|4|16
Astrida|AA|7|10|15
Astrida|BB|4|9|9
Betacab|CC|6|5|10
Betacab|AA|5|2|20
Betacab|BB||| 25
Canutility|AA|||15
Canutility|CC| ||19
Divadip|CC|2|4|16
Divadip|DD|3|1|25
] (delimiter is '|');
```

Resultados

Cargue los datos y abra una hoja. Cree una nueva tabla y agregue este campo como dimensión:

* Customer

Cree la siguiente medida:

* =RangeAvg (Above(Sum(Sales),1,3))

Tabla de resultados\*

| Customer | RangeAvg (Above(Sum(Sales),1,3)) |
| --- | --- |
| Totals | - |
| Astrida | - |
| Betacab | 587 |
| Canutility | 563 |
| Divadip | 603 |

En los argumentos de la función Above, offset se configura en 1 y count en 3. La función busca los resultados de la expresiónSum(Sales) en las tres filas situadas inmediatamente por encima de la fila actual en el segmento de columna (donde haya una fila). Estos tres valores se utilizan como entrada para la función RangeAvg, que encuentra el valor promedio en el rango de números proporcionado.

## Más información

* [Below - función de gráfico](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/below.htm)
* [Bottom - función de gráfico](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/bottom.htm)
* [Top - función de gráfico](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/InterRecordFunctions/top.htm)
* [RangeAvg Función de script y de gráfico](https://help.qlik.com/es-ES/sense/May2026/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/RangeFunctions/rangeavg.htm)