Compartilhar via


Colunas calculadas

Este tópico mostra como criar uma coluna calculada com base em dados na pasta de trabalho de exemplo do DAX e inclui informações sobre como usar o recurso Preenchimento Automático ao compilar uma fórmula. Para obter mais informações sobre fórmulas, consulte Criar fórmulas para cálculos.

Noções básicas sobre colunas calculadas

Coluna calculada é uma coluna adicionada a uma tabela do PowerPivot existente. Em vez de colar ou importar valores na coluna, você cria uma fórmula DAX que define os valores da coluna. A coluna calculada pode ser usada em uma Tabela Dinâmica, em um Gráfico Dinâmico ou no relatório Power View, como você faria com qualquer outra coluna de dados.

As fórmulas nas colunas calculadas são bem semelhantes às fórmulas criadas no Excel. No entanto, diferentemente do Excel, não é possível criar fórmulas diferentes para linhas distintas em uma tabela; em vez disso, a fórmula DAX é aplicada automaticamente a toda a coluna.

Quando uma coluna contém uma fórmula, o valor é computado para cada linha. Os resultados são calculados para a coluna assim que você cria a fórmula. Em seguida, os valores de coluna são recalculados conforme necessário, como quando os dados subjacentes são atualizados.

É possível criar medidas ou colunas calculadas baseadas em medidas e em outras colunas calculadas. Por exemplo, talvez você crie uma coluna calculada para extrair um número de uma cadeia de caracteres de texto e, em seguida, usar esse número em outra coluna calculada.

Criando uma coluna calculada

Uma coluna calculada se baseia nos dados que você adicionou a uma tabela existente. Por exemplo, você pode querer concatenar valores, realizar adição, extrair subcadeias de caracteres ou comparar os valores em outros campos. Para adicionar uma coluna calculada, você deve já ter adicionado pelo menos uma tabela à pasta de trabalho do PowerPivot.

Esse exemplo demonstra o uso de Preenchimento Automático para compilar uma fórmula simples a ser usada em uma nova coluna calculada. A fórmula é a seguinte:

=EOMONTH([StartDate],0])

A fórmula extrai o mês da coluna StartDate da tabela Promotion da pasta de trabalho de exemplo do DAX. Em seguida, ela calcula o final do valor de mês para cada linha da tabela Promotion. O segundo parâmetro especifica o número de meses antes ou depois do mês em StartDate; neste caso, 0 significa o mesmo mês. Por exemplo, se o valor na coluna StartDate for 01/06/2001, o valor da coluna calculada será 30/06/2001.

Para obter mais informações sobre a pasta de trabalho de exemplo, consulte Obter dados de exemplo para o PowerPivot.

ObservaçãoObservação

No Windows Vista e no Windows 7, os recursos na janela do PowerPivot estão disponíveis em uma faixa de opções, abordada neste tópico. No Windows XP, os recursos estão disponíveis em um conjunto de menus. Se você estiver usando o Windows XP e quiser ver como os comandos do menu estão relacionados aos comandos da faixa de opções, consulte Interface do PowerPivot no Windows XP.

Para criar uma coluna calculada usando Preenchimento Automático

  1. Na janela do PowerPivot, clique na guia que contém a tabela Promotion. Para consultar a guia Promotion, você talvez precise clicar na seta para baixo à direita das guias exibidas.

  2. Na janela do PowerPivot, na guia Design, no grupo Colunas, clique em Adicionar.

    Adicionar Coluna é realçado na coluna vazia mais à direita, e o cursor se move para a barra de fórmulas.

  3. Digite um sinal de igualdade e, em seguida, clique no botão de função (fx).

  4. EOMONTH é uma função de data e hora; portanto, selecione Data & Hora na lista suspensa Selecionar uma categoria.

    As funções DAX disponíveis na caixa de diálogo Inserir Função são agrupadas por categoria. Você pode exibir a lista completa de funções disponíveis selecionando Tudo.

    • Pressione TAB para se mover entre a lista suspensa de categorias de função, a lista suspensa de funções e os botões OK e Cancelar.

    • Pressione as teclas de seta para cima e para baixo a fim de selecionar uma categoria de funções ou uma função individual.

    • À medida que você seleciona cada função, o PowerPivot exibe a ajuda da função, inclusive uma descrição e uma lista dos argumentos obrigatórios e opcionais.

  5. Na lista suspensa, Selecione uma função, selecione EOMONTH e clique em OK.

    A Barra de Fórmulas é atualizada para mostrar a função e o parêntese de abertura, e o cursor é posicionado automaticamente onde você digitará o próximo argumento:

    =EOMONTH( 

    A dica de ferramenta abaixo da Barra de Fórmulas indica que a função EOMONTH requer dois argumentos; o primeiro é uma data e o segundo é um valor numérico que representa o número de meses.

  6. Digite um colchete de abertura [ para exibir uma lista de colunas da tabela atual.

    Dica: se a coluna estiver em outra tabela, digite as primeiras letras do nome da tabela à qual a coluna pertence e selecione o nome totalmente qualificado da coluna na lista.

    Para este exemplo, selecione [StartDate] na lista e pressione TAB.

    O nome da coluna é inserido na fórmula da seguinte forma:

    =EOMONTH ([StartDate]
  7. Digite uma vírgula, o valor 0 e o parêntese de fechamento.

    A fórmula final deve ser a seguinte:

    =EOMONTH([StartDate], 0)
  8. Pressione ENTER para aceitar a fórmula.

    A coluna inteira é preenchida com a fórmula, e um valor é calculado para cada linha.

Nomeando uma coluna calculada

Por padrão, novas colunas calculadas são adicionadas à direita de outras colunas em uma planilha, e a coluna recebe automaticamente o nome padrão CalculatedColumn1, CalculatedColumn2 e assim por diante. É possível reorganizar e renomear colunas depois de sua criação. Lembre-se das seguintes restrições quanto a alterações feitas em colunas calculadas:

  • Cada nome de coluna deve ser exclusivo dentro de uma tabela.

  • Evite nomes que já foram usados para medidas dentro da mesma pasta de trabalho. Embora seja possível que uma medida e uma coluna calculada tenham o mesmo nome, se os nomes não forem exclusivos você poderá obter erros de cálculo facilmente. Para evitar invocar uma medida acidentalmente, ao fazer referência a uma coluna use sempre uma referência de coluna totalmente qualificada.

  • Quando você renomeia uma coluna calculada, todas as fórmulas que se baseiam na coluna existente devem ser atualizadas. A menos que você esteja no modo de atualização manual, a atualização dos resultados das fórmulas acontece automaticamente. No entanto, essa operação pode demorar um pouco.

  • Há alguns caracteres que não podem ser usados nos nomes de colunas ou nos nomes de objetos em uma pasta de trabalho do PowerPivot. Para obter mais informações, consulte "Requisitos de nomenclatura" em Especificação da sintaxe DAX para o PowerPivot.

Para renomear ou editar uma coluna calculada existente

  1. Na janela do PowerPivot, clique com o botão direito do mouse no cabeçalho da coluna calculada que você deseja renomear e clique em Renomear Coluna.

  2. Digite um novo nome e, em seguida, pressione ENTER para aceitar o novo nome.

Alterando o tipo de dados

Você pode alterar o tipo de dados de uma coluna calculada da mesma maneira que pode alterar o tipo de dados para todas as colunas não calculadas. Você não pode fazer estas alterações de tipo de dados: de texto para decimal, de texto para inteiro, de texto para moeda e de texto data. Você pode fazer uma alteração de texto para Booliano.

Compreendendo o desempenho de colunas calculadas

A fórmula de uma coluna calculada pode consumir mais recursos que a fórmula usada para uma medida. Uma das razões é que o resultado de uma coluna calculada sempre é calculado para cada linha de uma tabela, enquanto que uma medida é calculada apenas para as células que são usadas na Tabela Dinâmica ou no Gráfico Dinâmico.

Por exemplo, uma tabela com um milhão de linhas sempre terá uma coluna calculada com um milhão de resultados, e um efeito correspondente em desempenho. No entanto, uma Tabela Dinâmica normalmente filtra os dados, aplicando títulos de linha e coluna; por isso, a medida só é calculada para o subconjunto de dados em cada célula da Tabela Dinâmica.

Uma fórmula tem dependências nos objetos referenciados na fórmula, como outras colunas ou expressões que avaliam valores. Por exemplo, uma coluna calculada baseada em outra coluna, ou um cálculo que contenha uma expressão com uma referência de coluna, não pode ser avaliada até que a outra coluna seja avaliada. Por padrão, a atualização automática permanece habilitada em pastas de trabalho; por isso, todas essas dependências podem afetar o desempenho enquanto os valores são atualizados e as fórmulas, atualizadas.

Para evitar problemas de desempenho ao criar colunas calculadas, siga estas diretrizes:

  • Em vez de criar uma única fórmula que contém muitas dependências complexas, crie as fórmulas em etapas, salvando os resultados em colunas, de forma que possa validar os resultados e avaliar o desempenho.

  • A modificação de dados muitas vezes exigirá que colunas calculadas sejam recalculadas. É possível impedir isso, definindo-se o modo de recálculo como manual; no entanto, se algum valor na coluna calculada estiver incorreto, a coluna permanecerá esmaecida até você atualizar e recalcular os dados.

  • Se você alterar ou excluir relações entre tabelas, as fórmulas que usam colunas nessas tabelas se tornarão inválidas.

  • Se você criar uma fórmula contendo uma dependência circular ou autorreferenciada, ocorrerá um erro.

Consulte também

Conceitos

Adicionar cálculos a relatórios, gráficos e tabelas dinâmicas

Criar fórmulas para cálculos

Visão geral da linguagem DAX (Data Analysis Expressions)

Agregações em fórmulas

Outros recursos

Relações entre tabelas