A função PIVOTBY permite que você crie um resumo de seus dados por meio de uma fórmula. Ele dá suporte ao agrupamento ao longo de dois eixos e agregação dos valores associados. Por exemplo, se você tiver uma tabela de dados de vendas, poderá gerar um resumo das vendas por estado e ano.
Observação: PIVOTBY é uma função que retorna uma matriz de valores que pode ser derramada na grade. Uma discussão sobre PIVOTBY e Tabelas Dinâmicas pode ser encontrada aqui.
Sintaxe
A função PIVOTBY permite agrupar, agregar, classificar e filtrar dados com base nos campos de linha e coluna especificados.
A sintaxe da função PIVOTBY é:
PIVOTBY(row_fields,col_fields,values,function,[field_headers],[row_total_depth],[row_sort_order],[col_total_depth],[col_sort_order],[filter_array])
Argumento |
Descrição |
---|---|
row_fields (obrigatório) |
Uma matriz ou intervalo orientado para colunas que contém os valores usados para agrupar linhas e gerar cabeçalhos de linha. A matriz ou o intervalo podem conter várias colunas. Nesse caso, a saída terá vários níveis de grupo de linhas. |
col_fields (obrigatório) |
Uma matriz ou intervalo orientado para colunas que contém os valores usados para agrupar colunas e gerar cabeçalhos de coluna. A matriz ou o intervalo podem conter várias colunas. Nesse caso, a saída terá vários níveis de grupo de colunas. |
valores (obrigatório) |
Uma matriz ou intervalo orientado para colunas dos dados a serem agregados. A matriz ou o intervalo podem conter várias colunas. Nesse caso, a saída terá várias agregações. |
função (obrigatório) |
Uma função lambda ou lambda reduzida de eta (SUM, AVERAGE, COUNT etc) que define como agregar os valores. Um vetor de lambdas pode ser fornecido. Nesse caso, a saída terá várias agregações. A orientação do vetor determinará se eles são definidos em linha ou em coluna. |
field_headers |
Um número que especifica se os valores, row_fields, col_fields e têm cabeçalhos e se os cabeçalhos de campo devem ser retornados nos resultados. Os valores possíveis são:
Ausente: automático. Observação: Assume automaticamente que os dados contêm cabeçalhos com base no argumento de valores. Se o 1º valor for texto e o 2º valor for um número, os dados deverão ter cabeçalhos. Os cabeçalhos de campos são mostrados se houver vários níveis de linha ou grupo de colunas. |
row_total_depth |
Determina se os cabeçalhos de linha devem conter totais. Os valores possíveis são:
Ausente: automático: totais grandes e, sempre que possível, subtotais. Observação: Para subtotais, row_fields deve ter pelo menos duas colunas. Há suporte para números maiores que 2 , desde que row_field tenha colunas suficientes. |
row_sort_order |
Um número que indica como as linhas devem ser classificadas. Os números correspondem às colunas em row_fields seguidas pelas colunas em valores. Se o número for negativo, as linhas serão classificadas em ordem descendente/reversa. Um vetor de números pode ser fornecido ao classificar com base apenas em row_fields. |
col_total_depth |
Determina se os cabeçalhos de coluna devem conter totais. Os valores possíveis são:
Ausente: automático: totais grandes e, sempre que possível, subtotais. Observação: Para subtotais, col_fields deve ter pelo menos duas colunas. Há suporte para números maiores que 2 desde que col_field tenha colunas suficientes. |
col_sort_order |
Um número que indica como as linhas devem ser classificadas. Os números correspondem às colunas em col_fields seguidas pelas colunas em valores. Se o número for negativo, as linhas serão classificadas em ordem descendente/reversa. Um vetor de números pode ser fornecido ao classificar com base apenas em col_fields. |
filter_array |
Uma matriz 1D orientada à coluna de boolianos que indica se a linha de dados correspondente deve ser considerada. Observação: O comprimento da matriz deve corresponder ao comprimento daqueles fornecidos para row_fields e col_fields. |
Exemplos
Exemplo 1: use PIVOTBY para gerar um resumo do total de vendas por produto e ano.
Exemplo 2: use PIVOTBY para gerar um resumo do total de vendas por produto e ano. Classificação decrescente por vendas.